最近項目需要將批量鏈接中的pdf文檔爬下來處理,根據以下步驟完成了任務: 參考資料: https://blog.csdn.net/zhrq95/article/details/79300411 https://blog.csdn.net/yllifesong/article/details/8104 ...
最近項目需要將批量鏈接中的pdf文檔爬下來處理,根據以下步驟完成了任務:
- 將批量下載鏈接copy到text中,每行1個鏈接;
- 再讀txt文檔構造url_list列表,利用readlines返回以行為單位的列表;
- 利用str的rstrip方法,刪除 string 字元串末尾的指定字元(預設為空格);
- 調用getFile函數:
- 通過指定分隔符‘/’對字元串進行切片,取list的最後一列即鏈接文檔名作為下載文件名。
- 調用urlopen,調用read、write方法完成下載
參考資料:
- https://blog.csdn.net/zhrq95/article/details/79300411
- https://blog.csdn.net/yllifesong/article/details/81044619
1 import urllib.request 2 import os 3 4 def getFile(url): 5 file_name = url.split('/')[-1] 6 u = urllib.request.urlopen(url) 7 f = open(file_name, 'wb') 8 block_sz = 8192 9 while True: 10 buffer = u.read(block_sz) 11 if not buffer: 12 break 13 f.write(buffer) 14 f.close() 15 print("Sucessful to download" + " " + file_name) 16 17 os.chdir(os.path.join(os.getcwd(), 'pdf_download')) 18 19 f=open('E:/VGID_Text/url_list.txt') 20 url_list=f.readlines() 21 url_lst=[] 22 for line in url_list: 23 line=line.rstrip("\n") 24 getFile(line)