1、基礎知識chrome
1.網絡爬蟲編程
(1)爬蟲的分類json
通用網絡爬蟲:又稱全網爬蟲,常見的有百度和Google等搜索引擎,爬行對象從一些初始URL擴充到整個網絡,主要爲門戶站點搜索引擎和大型網站服務採集數據,這在網絡上一般稱爲搜索引擎瀏覽器
聚焦網絡爬蟲、增量式網絡爬蟲、深層網絡爬蟲:這類爬蟲比較有目的,也就是網絡上常常說的網絡爬蟲網絡
(2)反爬蟲技術及解決方案app
2.chrome分析網站scrapy
(1)五大主流瀏覽器:IE,Opera,Google chrome,Firefox,Safari,其中chrome和Firefox是編程開發首選,主要是二者的運行速度、擴展性和用戶體驗都符合開發人員所需,其中chrome對HTML5和CSS3的支持也比較完善。ide
(2)開發者工具的界面共有9個標籤頁,分別是:Elements, console,source,network,performance,memory,application,security,audits,其中爬蟲要掌握network和elements就能知足大多數爬蟲的需求,其中network是最核心的部分函數
2、json文件函數工具
1. json.dumps():將Python對象編碼成JSON字符串
json.dumps(obj, skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, cls=None, indent=None, separators=None, encoding="utf-8", default=None, sort_keys=False, **kw)
2. json.loads():將已編碼的JSON字符串解碼成Python對象
json.loads(s[, encoding[, cls[, object_hook[, parse_float[, parse_int[, parse_constant[, object_pairs_hook[, **kw]]]]]]]])
3、scrapy函數
1、scrapy.Request(url,callback,method,meta,headers)
其中callback指定一個回調函數,該回調函數一這個request的response做爲第一個參數,若是未指定callback,則默認使用spider的parse()方法;
meta(dict):指定Request.meta屬性的初始值,若是給了該參數,dict將會淺拷貝;一個dict,包含request的任意元數據。該dict在新Requests中爲空,當Scrapy的其餘擴展啓用的時候填充數據。dict在傳輸是淺拷貝。(淺拷貝只是增長了一個好指針指向已經存在的內存,而深拷貝就是增長一個指針而且 申請一個新的內存,使這個指針指向新的內存,採用深拷貝的狀況下,釋放內存的時候就不會出如今淺拷貝是重複釋放同一內存的錯誤);
method(string):HTTP請求的方法,默認爲GET,headers(dict):request的頭信息。