1、接觸過幾種爬蟲模塊
urllib、requests這兩種爬蟲模塊。
2、robots協議是什么?
它就是一個防君子不防小人的協議,網站有一些數據不想被爬蟲程序爬取,可以編寫robots協議文件,明確指明哪些內容可以爬取哪些不可以爬取。
requests模塊中並沒有使用硬性的語法對該協議進行生效操作。
在Scrapy框架中在settings.py文件中使用了硬性語法對該協議進行了生效。
3、如何處理驗證碼?
使用三方的打碼平台比如:雲打碼平台、打碼兔。可以用來處理驗證碼。
4、掌握幾種數據解析的方式?
re、xpath(最常用)、bs4(python獨有)
5、如何爬取動態加載的頁面數據?
selenium; ajax:抓包工具抓取異步發起的請求(url)
6、接觸過哪些反爬機制?如何處理?
robots協議、UA、封IP、驗證碼、動態數據加載、數據加密、token
處理:配置不遵守robots協議、偽裝User-Agent、代理IP更換、打碼平台對驗證碼識別、selenium處理或者使用抓包工具去抓取動態加載的AJAX請求數據包、按照已知的各種加密方式進行解密、去前台頁面進行token值的查找手動放入請求攜帶的參數中。
7、在Scrapy中接觸過幾種爬蟲類?
Spider、CrawlSpider(鏈接提取器和規則解析器)、RedisCrawlSpider、RedisSpider
8、如果實現分布式流程?
必須要通過scrapy-redis組件來實現,可以由RedisCrawlSpider、RedisSpider這兩種類分別實現。
9、簡述 requests模塊的作用及基本使用?
2、requests模塊參數,data與json參數的區別?
97、簡述 beautifulsoup模塊的作用及基本使用?
98、簡述 seleninu模塊的作用及基本使用?
99、scrapy框架中各組件的工作流程?
100、在scrapy框架中如何設置代理(兩種方法)?
101、scrapy框架中如何實現大文件的下載?
102、scrapy中如何實現限速?
103、scrapy中如何實現暫定爬蟲?
104、scrapy中如何進行自定制命令?
105、scrapy中如何實現的記錄爬蟲的深度?
106、scrapy中的pipelines工作原理?
107、scrapy的pipelines如何丟棄一個item對象?
108、簡述scrapy中爬蟲中間件和下載中間件的作用?
109、scrapy-redis組件的作用?
110、scrapy-redis組件中如何實現的任務的去重?
111、scrapy-redis的調度器如何實現任務的深度優先和廣度優先?
112、簡述 vitualenv 及應用場景?
113、簡述 pipreqs 及應用場景?
114、在Python中使用過什么代碼檢查工具?
115、簡述 saltstack、ansible、fabric、puppet工具的作用?