寫簡單的爬蟲都需要什麼
阿新 • • 發佈:2018-11-24
寫爬蟲都需要些什麼呢,
A 要爬取的網址難度的大小 (選擇谷歌對要爬取的網址原始碼進行分析)
B 借用Python中的模組urllib與requests 對網址進行請求與訪問
以requests為例:(requests模組的匯入見:http://blog.51cto.com/13747953/2321389)
a 下載圖片
import requests ret=requests.get('http://×××w.xiaohuar.com/d/file/20180724/40d83a6709eca21137dcdd80ee28c31b.jpg') print(ret,type(ret)) print(ret.status_code) print(ret.content) with open(r'E:\text1\爬蟲\text_png\p1.png','wb') as f: f.write(ret.content)
b 基本文字資訊的獲取
import requests from urllib import request # ret=requests.get('http://maoyan.com/board') headers={ 'User-Agent':'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36' } ret=request.Request('http://maoyan.com/board',headers=headers) resp=request.urlopen(ret) print(resp,type(resp)) print(resp.read().decode('utf-8'))
這裡不用requests 模組是因為在請求的過程中返回了403的錯誤
猜想可能的原因是:網址的反爬蟲機制發現了來自pycharm的請求;
所以可以用urllib(Python自帶的模組)提供的request模組
結果如下:
C 如何從B-b中獲取的文字資料中提取出自己想要的資料呢
a 分析資料的相同點
利用正則表示式與re模組
詳見:(未完)
(程式猿很無聊多多指教交流)