爬蟲(spider):是用指令碼代替瀏覽器請求伺服器獲取伺服器資源的程式。(python爬蟲優勢,支援模組很多,有scrapy非常強大的爬蟲框架)
1.通用爬蟲
2)功能:訪問網頁 --> 抓取資料 --> 資料儲存 --> 資料處理 --> 提供檢索服務
3)爬取流程:
① 給定一些起始的url,放入待爬取佇列
② 從佇列中獲取url物件,開始爬取資料
③ 分析網頁,獲取網頁內所有url,入隊,繼續重複執行第二步
2.聚焦爬蟲
1)功能:根據需求,實現爬蟲程式,抓取需要的資料
2)設計思路:
① 確定要爬取的url
② 模擬瀏覽器通過http協議訪問url,獲取伺服器返回的html**
③ 解析html字串(根據一定的規則提取需要的資料)
from urllib import request
① urllib.request.urlopen(url):開啟url,返回乙個response物件
② response常用方法:read()、readline()、readlines()、getcode()、geturl()、getheaders()
# coding:utf-8
from urllib import request
res = request.urlopen("")
print(res.read()) # 返回乙個二進位制資料
print(res.geturl()) # 請求的url
print(res.getheaders()) # 返回響應頭
print(res.getcode()) # 返回狀態碼
開啟
④ urllib.parse(python自帶,需要傳入乙個字典,parse.urlencode(字典資料))
# coding:utf-8正規表示式from urllib import request,parse
base_url = ""
source =
headers =
# 解析url,請求中有中文的時候需要編碼一下再請求
url1 = parse.urlencode(source) # source為字典
print(url1) # url1為:kw=%e7%8e%8b%e4%bf%8a%e5%87%af
for i in range(1,6):
pn = (i-1)*50
# 拼接每一頁url
url = base_url%pn + url1
# print(url)
# 對每一頁構造請求並傳送請求
req = request.request(url=url,headers=headers)
response = request.urlopen(req)
print(response.getcode())
xpath
bs4jsonpath
user-agent
**ip(西刺**)
驗證碼訪問(打碼平台)
動態載入網頁
資料加密(分析js**)
爬蟲-反爬蟲-反反爬蟲
1)分析業務需求、分析出你需要的資料、資料量、週期
2)建模,根據需求,建立資料庫,用資料庫表、表字段、表關聯來描述業務之間的聯絡
3)分析爬取的路徑、html結構、資料傳輸
Python爬蟲基礎 1
url uniform resource locator 統一資源定位符。採用url可以用一種統一的格式來描述各種資訊資源,包括檔案 伺服器的位址和目錄等。url的一般格式為 帶方括號的為可選項 protocol hostname port path parameters query fragmen...
Python爬蟲基礎1
python版本 3.6 編譯器 pycharm 系統 win 10 1 file new project create 2 右擊建立的專案 new python file 3 開始輸入 import urllib.request response urllib.request urlopen pr...
python爬蟲基礎(1)
例 開啟bing搜尋頁面檔案 c users desktop mkdir xy web scraping 在桌面建立乙個新資料夾 ps c users desktop cd xy web scraping 進入該資料夾 ps c users desktop xy web scraping pytho...