『壹』 python爬蟲爬取豆瓣影評返回403怎麼辦,代理IP和cookie都設置了
如果只是爬取影評的話,沒必要登錄。
返回的304是你的cookie用的是舊的。
去掉cookie,正常抓取就可以了。
『貳』 python下 selenium與chrome結合進行網頁爬取,怎麼設置代理IP
#coding:utf-8
import sys,re,random,time,os
import socket
from socket import error as socket_error
import threading
import urllib2,cookielib
from bs4 import BeautifulSoup
from selenium import webdriver
from selenium.webdriver.common.proxy import *
from selenium.webdriver.firefox.firefox_profile import FirefoxProfile
from selenium.webdriver.firefox.firefox_binary import FirefoxBinary
proxyFilePath = time.strftime("%Y%m%d")
def testSocket(ip, port):
'''
socket連接測試,用來檢測proxy ip,port 是否可以正常連接
'''
print '正在測試socket連接...'
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
try:
sock.settimeout(10)
sock.connect((ip, int(port)))
#sock.send('meta')
sock.close()
print ip+':'+port+'--status:ok'
return 1
except socket_error as serr: # connection error
sock.close()
print ip+':'+port+'--status:error--Connection refused.'
return 0
def getDriver(httpProxy = '', type='Firefox'):
if type == 'Firefox':
proxy = Proxy({
'proxyType': ProxyType.MANUAL,
'httpProxy': httpProxy,
'ftpProxy': httpProxy,
'sslProxy': httpProxy,
'noProxy': '' # set this value as desired
})
firefox_profile = FirefoxProfile()
#firefox_profile.add_extension("firefox_extensions/adblock_plus-2.5.1-sm+tb+an+fx.xpi")
firefox_profile.add_extension("firefox_extensions/webdriver_element_locator-1.rev312-fx.xpi")
firefox_profile.set_preference("browser.download.folderList",2)
firefox_profile.set_preference("webdriver.load.strategy", "unstable")
#driver = webdriver.Firefox(firefox_profile = firefox_profile, proxy=proxy, firefox_binary=FirefoxBinary('/usr/bin/firefox'))
#driver = webdriver.Firefox(firefox_profile = firefox_profile, proxy=proxy, firefox_binary=FirefoxBinary("/cygdrive/c/Program\ Files\ (x86)/Mozilla\ Firefox/firefox.exe"))
driver = webdriver.Firefox(firefox_profile = firefox_profile, proxy=proxy)
elif type == 'PhantomJS': # PhantomJS
service_args = [
'--proxy='+httpProxy,
'--proxy-type=http',
]
webdriver.DesiredCapabilities.PHANTOMJS['phantomjs.page.customHeaders.Accept'] = 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8'
webdriver.DesiredCapabilities.PHANTOMJS['phantomjs.page.customHeaders.User-Agent'] = 'Mozilla/5.0 (X11; Windows x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/33.0.1750.117 Safari/537.36'
driver = webdriver.PhantomJS(executable_path='windows/phantomjs.exe', service_args=service_args)
else: # Chrome
chrome_options = webdriver.ChromeOptions()
#chrome_options.add_extension('firefox_extensions/adblockplus_1_7_4.crx')
chrome_options.add_argument('--proxy-server=%s' % httpProxy)
driver = webdriver.Chrome(executable_path='windows/chromedriver.exe', chrome_options=chrome_options)
return driver
『叄』 python 爬蟲 ip池怎麼做
自己做個代理伺服器。再指向次一級代理。或者是直接讓爬蟲通過http proxy的參數設置去先把一個代理。 代理池通常是租來的,或者是掃描出來的。掃描出來的往往大部分都不可用。 爬蟲的實現有幾百種方案。通常建議直接從SCRAPY入手。
『肆』 python中,進行爬蟲抓取怎麼樣能夠使用代理IP
在python中用爬蟲再用到代理伺服器,有兩個辦法,①直接在布署該python爬蟲的電腦上設置代理伺服器,這樣從該電腦上出站的信息就只能由代理伺服器處理了,爬蟲的也不例外,可以搜"windows設置代理伺服器"、"Linux設置代理伺服器"。通常是」設置->網路->連接->代理「。
②若想讓python單獨使用這個代理伺服器,可以搜一下"python proxy config","python配置代理伺服器",有一些庫支持簡單的BM代理伺服器連接。
『伍』 學習python爬蟲IP被限制怎麼辦
解決爬蟲ip限制問題,可以使用芝麻代理ip來突破ip限制。
『陸』 python爬蟲怎麼設置HTTP代理伺服器
解決的方法很簡單,就是使用代理伺服器。
使用代理伺服器去爬取某個網站的內容的時候,在對方的網站上,顯示的不是我們真實的IP地址,而是代理伺服器的IP地址。並且在Python爬蟲中,使用代理伺服器設置起來也很簡單。
『柒』 如何使用Python實現爬蟲代理IP池
第一步:找IP資源
IP資源並不豐富,換句話說是供不應求的,因此一般是使用動態IP。
免費方法,直接在網路上找,在搜索引擎中一搜索特別多能夠提供IP資源的網站,進行採集即可。
付費方法,通過購買芝麻ip上的IP資源,並進行提取,搭建IP池。
『捌』 代理IP對於Python爬蟲有多重要
額~我使用代理IP做爬蟲這么久,還沒遇到這個問題哎,是不是因為你使用的代理IP可用率不太高導致的啊,或者是你的代理IP實際上並不是高匿的啊,網站根據某些規律找到你的本機IP了。我一直用的是 618IP代理 HTTP,沒遇到什麼問題,覺得爬取速度很快,也很穩定。建議你用排除法去排除可能導致的原因,快點解決問題
『玖』 python爬蟲怎麼抓取代理伺服器
如果你下面那個可以使用個,你就都加上代理就是了,應該是有的網站限制了爬蟲的頭部數據。 雖然你可以通過urlopen返回的數據判斷,但是不建議做,增加成本。 如果解決了您的問題請採納! 如果未解決請繼續追問
『拾』 python爬蟲 如何自己用雲伺服器上搭建代理伺服器 並使用requests測試代理
1、簡介
使用同一個ip頻繁爬取一個網站,久了之後會被該網站的伺服器屏蔽。所以這個時候需要使用代理伺服器。通過ip欺騙的方式去爬取網站
可以使用http://yum.iqianyue.com.com/proxy中找到很多伺服器代理地址
2、應用
# *-*coding:utf-8*-*
from urllib import request
def use_porxy(porxy_addr,url):
porxy = request.ProxyHandler({'http':porxy_addr})
opener = request.build_opener(porxy, request.ProxyHandler)
request.install_opener(opener)
data = request.urlopen(url).read().decode('utf-8')
return data
data = use_porxy("114.115.182.59:128","http://www..com")
print(len(data))