這篇文章將為大家詳細講解有關Python如何實現爬蟲設置代理IP和偽裝成瀏覽器的方法,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

1.python爬蟲瀏覽器偽裝
#導入urllib.request模塊
import urllib.request
#設置請求頭
headers=("User-Agent","Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.221 Safari/537.36 SE 2.X MetaSr 1.0")
#創建一個opener
opener=urllib.request.build_opener()
#將headers添加到opener中
opener.addheaders=[headers]
#將opener安裝為全局
urllib.request.install_opener(opener)
#用urlopen打開網頁
data=urllib.request.urlopen(url).read().decode('utf-8','ignore')2.設置代理
#定義代理ip
proxy_addr="122.241.72.191:808"
#設置代理
proxy=urllib.request.ProxyHandle({'http':proxy_addr})
#創建一個opener
opener=urllib.request.build_opener(proxy,urllib.request.HTTPHandle)
#將opener安裝為全局
urllib.request.install_opener(opener)
#用urlopen打開網頁
data=urllib.request.urlopen(url).read().decode('utf-8','ignore')3.同時設置用代理和模擬瀏覽器訪問
#定義代理ip
proxy_addr="122.241.72.191:808"
#創建一個請求
req=urllib.request.Request(url)
#添加headers
req.add_header("User-Agent","Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko)
#設置代理
proxy=urllib.request.ProxyHandle("http":proxy_addr)
#創建一個opener
opener=urllib.request.build_opener(proxy,urllib.request.HTTPHandle)
#將opener安裝為全局
urllib.request.install_opener(opener)
#用urlopen打開網頁
data=urllib.request.urlopen(req).read().decode('utf-8','ignore')4.在請求頭中添加多個信息
import urllib.request
page_headers={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.221 Safari/537.36 SE 2.X MetaSr 1.0",
       "Host":"www.baidu.com",
       "Cookie":"xxxxxxxx"
       }
req=urllib.request.Request(url,headers=page_headers)
data=urllib.request.urlopen(req).read().decode('utf-8','ignore')5.添加post請求參數
import urllib.request
import urllib.parse
#設置post參數
page_data=urllib.parse.urlencode([
                  ('pn',page_num),
                  ('kd',keywords)
                  ])
#設置headers
page_headers={
     'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.221 Safari/537.36 SE 2.X MetaSr 1.0',
     'Connection':'keep-alive',
     'Host':'www.lagou.com',
     'Origin':'https://www.lagou.com',
     'Cookie':'JSESSIONID=ABAAABAABEEAAJA8F28C00A88DC4D771796BB5C6FFA2DDA; user_trace_token=20170715131136-d58c1f22f6434e9992fc0b35819a572b',
     'Accept':'application/json, text/javascript, */*; q=0.01',
     'Content-Type':'application/x-www-form-urlencoded; charset=UTF-8',
     'Referer':'https://www.lagou.com/jobs/list_%E6%95%B0%E6%8D%AE%E6%8C%96%E6%8E%98?labelWords=&fromSearch=true&suginput=',
     'X-Anit-Forge-Token':'None',
     'X-Requested-With':'XMLHttpRequest'
     }
#打開網頁
req=urllib.request.Request(url,headers=page_headers)
data=urllib.request.urlopen(req,data=page_data.encode('utf-8')).read().decode('utf-8')6.利用phantomjs模擬瀏覽器請求
#1.下載phantomjs安裝到本地,并設置環境變量 from selenium import webdriver bs=webdriver.PhantomJS() #打開url bs.get(url) #獲取網頁源碼 url_data=bs.page_source #將瀏覽到的網頁保存為圖片 bs.get_screenshot_as_file(filename)
7.phantomjs設置user-agent和cookie
from selenium import webdriver
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
dcap = dict(DesiredCapabilities.PHANTOMJS)
dcap["phantomjs.page.settings.userAgent"] = ("Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.221 Safari/537.36 SE 2.X MetaSr 1.0")
bs = webdriver.PhantomJS(desired_capabilities=dcap)
bs.get(url)
#刪除cookie
bs.delete_all_cookies()
#設置cookie
#cookie格式:在瀏覽器cookie中查看,一個cookie需要包含以下參數,domain、name、value、path
cookie={
  'domain':'.www.baidu.com', #注意前面有.
  'name':'xxxx', 
  'value':'xxxx', 
  'path':'xxxx'
  }
#向phantomjs中添加cookie
bs.add_cookie(cookie)8.利用web_driver工具
#1.下載web_driver工具(如chromdriver.exe)及對應的瀏覽器 #2.將chromdriver.exe放到某個目錄,如c:\chromdriver.exe from selenium import webdriver driver=webdriver.Chrome(executable_path="C:\chromdriver.exe") #打開url driver.get(url)
關于“Python如何實現爬蟲設置代理IP和偽裝成瀏覽器的方法”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。
另外有需要云服務器可以了解下創新互聯scvps.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業上云的綜合解決方案,具有“安全穩定、簡單易用、服務可用性高、性價比高”等特點與優勢,專為企業上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。
                標題名稱:Python如何實現爬蟲設置代理IP和偽裝成瀏覽器的方法-創新互聯
                
                文章來源:http://www.yijiale78.com/article34/dgsepe.html
            
成都網站建設公司_創新互聯,為您提供企業建站、虛擬主機、網站設計公司、網站導航、搜索引擎優化、電子商務
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯
