以后再也不用擔心寫爬蟲ip被封,不用擔心沒錢買代理ip的煩惱了 在使用python寫爬蟲時候,你會遇到所要爬取的網站有反爬取技術比如用同一個IP反復爬取同一個網頁,很可能會被封。如何有效的解決這個問題呢?我們可以使用代理ip,來設置代理ip池。 現在教大家一個可獲取大量免費有效快速的代理ip方法,我們訪問西刺免費代理ip網址 這里面提供了許多代理ip,但是我們嘗試過后會發現并不是每一個都是有效的。所以我們現在所要做的就是從里面提供的篩選出有效快速穩定的ip。 以下介紹的免費獲取代理ip池的方法: 優點:免費、數量多、有效、速度快 缺點:需要定期篩選 主要思路: 從網址上爬取ip地址并存儲 驗證ip是否能使用-(隨機訪問網址判斷響應碼) 格式化ip地址 代碼如下: 1.導入包 import requests from lxml import etree import time 1 2 3 2.獲取西刺免費代理ip網址上的代理ip def get_all_proxy(): url = 'http://www.xicidaili.com/nn/1' headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36', } response = requests.get(url, headers=headers) html_ele = etree.HTML(response.text) ip_eles = html_ele.xpath('//table[@id="ip_list"]/tr/td[2]/text()') port_ele = html_ele.xpath('//table[@id="ip_list"]/tr/td[3]/text()') proxy_list = [] for i in range(0,len(ip_eles)): proxy_str = 'http://' + ip_eles[i] + ':' + port_ele[i] proxy_list.append(proxy_str) return proxy_list 1 2 3 4 5 6 7 8 9 10 11 12 13 14 3.驗證獲取的ip def check_all_proxy(proxy_list): valid_proxy_list = [] for proxy in proxy_list: url = 'http://www.baidu.com/' proxy_dict = { 'http': proxy } try: start_time = time.time() response = requests.get(url, proxies=proxy_dict, timeout=5) if response.status_code == 200: end_time = time.time() print('代理可用:' + proxy) print('耗時:' + str(end_time - start_time)) valid_proxy_list.append(proxy) else: print('代理超時') except: print('代理不可用--------------->'+proxy) return valid_proxy_list 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 4.輸出獲取ip池 if __name__ == '__main__': proxy_list = get_all_proxy() valid_proxy_list = check_all_proxy(proxy_list) print('--'*30) print(valid_proxy_list) 1 2 3 4 5 技術能力有限歡迎提出意見,保證積極向上不斷學習 ———————————————— 版權聲明:本文為CSDN博主「彬小二」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。 原文鏈接:https://blog.csdn.net/qq_39884947/article/details/86609930
上傳時間: 2019-11-15
上傳用戶:fygwz1982
燈的控制裝置 第一部分 一般要求和安全要求
標簽: 國標
上傳時間: 2021-12-09
上傳用戶:
JESD9B-2011 微電子封裝及封蓋檢驗標準 此標準為英文版本。
上傳時間: 2022-07-25
上傳用戶:默默
PROTEL99SE常規教程(圖片教程) 5天(每天2小時),你就可以搞定PROTEL99SE的常規操作。 課程介紹: 圖片教程的第1天: 學會自己畫簡單的SCH文件 第1課:新建一個*.DDB,新建一個SCH文件,并且添加畫SCH要用到的零件庫>> 第2課:利用添加好的零件庫,進行畫第一個可以自動布線的原理圖>> 課后補充:SCH中一些必須要避免的錯誤! 圖片教程的第2天: 學會從SCH到PCB的轉變,并且進行自動布線 第一課:建立一個PCB文件,并且添加自動布線所必需的封裝庫 第二課:把前面的SCH文件變成PCB板 第三課: 對PCB進行自動布線 圖片教程的第3天: 學會自己做SCH零件。說明:SCH零件庫用來畫圖和自動布線 第一課:做一個SCH里面常要用到的電阻零件 圖片教程的第4天: 學會自己做PCB零件封裝 第一課:做一個屬于自己的PCB零件封裝 課后補充:PCB中一些必須要避免的錯誤! 布線方面的高級設置:自動布線和手動布線方面的高級設置問題 圖片教程的第5天: 一些高級的常用技巧 一、SCH中的一些常用技巧 SCH的一些高級設置和常用技巧 二、PCB的一些高級設置和常用技巧 在PCB中,如何校驗和查看PCB單個的網絡連接情況 在PCB中給PCB補淚滴的具體操作 在PCB中給PCB做覆銅的具體操作 在PCB中如何打印出中空的焊盤(這個功能對于熱轉印制板比較有用) 在PCB中如何找到我們要找的封裝 如何在PCB文件中加上漂亮的漢字 附件:PROTEL99SE 安裝 License 5天(每天2小時),你就可以搞定PROTEL99SE的常規操作。
上傳時間: 2013-05-24
上傳用戶:lgd57115700
·ATMEL MP3電路圖文件列表: hardware ........\BOM.pdf ........\BottomLayer.PDF ........\Gerber_MP3.zip ........\MP3.ddb ........\Schematic.PDF ........\TopLayer.
上傳時間: 2013-04-24
上傳用戶:BIBI
·摘要: DDB SDRAM使用雙倍數據速率結構,它能獲得比SDRAM更高的性能.DDR SDRAM需要特定的DDB控制器才能完成與DSP、FPGA之間的通信.由于Xilinx VirtexTM-4系列FPGA具備ChipSync源同步技術等優勢,本設計采用它來實現DDRSDRAM控制器.該DDR SDRAM控制器采用直接時鐘數據捕獲技術,本文將重點闡述該技術.
標簽: Xilinx_FPGA DDR_SDRAM 控制器
上傳時間: 2013-05-24
上傳用戶:zxc23456789
·詳細說明:制作硬盤MP3的源代碼與PCB圖,絕對經典的學習資料文件列表: 硬盤MP3資料 ...................\HDDMP3.JPG ...................\MP3PROJ.Ddb ...................\oldmp3 ...................\......\aud
上傳時間: 2013-04-24
上傳用戶:壞天使kk
·作 者: 袁任光 I S B N: 7111144716 頁 數: 676 開 本: 32開 重 量: 460克 封面形式: 簡裝本 出 版 社: 機械工業出版社 本社特價書 出版日期: 2004-7-1 定 價: 30元
上傳時間: 2013-07-05
上傳用戶:LouieWu
·作 者: 三菱電機株式會社 I S B N: 7118019917 頁 數: 176 開 本: 大16開 封面形式: 簡裝本 出 版 社: 國防工業出版社 本社特價書 出版日期: 2001-7-1 定 價: 40元 變頻器原理與應用教程 內容簡介本書
上傳時間: 2013-08-01
上傳用戶:aappkkee
成功的一半,只要你能專心的看下去。一起加油!
標簽: 單片機
上傳時間: 2013-07-21
上傳用戶:nanxia