今天给大家分享的是如何在爬取数据的时候防止IP被封,今天给大家分享两种方法,希望大家可以认真学习,再也不用担心被封IP啦。
降低访问速度,我们可以使用时间模块中的睡眠,使程序每运行一次后就睡眠1 s,这样的话就可以大大的减少ip被封的几率
为了提高效率,我们可以使用代理ip来解决,ip是亿牛云的动态转发代理,以下是代理配置过程的示例
<>之前得到selenium import  webdriver import 字符串 import zipfile , ,#代理服务器=,proxyHost “t.16yun.cn"=,proxyPort “31111”; , ,#代理隧道验证信息=,proxyUser “username"=,proxyPass “password" , ,def create_proxy_auth_extension (proxy_host, proxy_port, ,proxy_username, proxy_password, ,计划=& # 39;http # 39;,, plugin_path=None): ,if plugin_path  is 没有:=,plugin_path " # 39; C:/{} _ {} @t.16yun.zip& # 39; .format (proxy_username, proxy_password) ,=,manifest_json “““, {,“version":“1.0.0",,“manifest_version",, 2,,“name":,“16 yun Proxy",,“permissions",:,“,“Proxy",,“tabs",,“unlimitedStorage",,“storage",,,,,,“webRequest",,“webRequestBlocking",),,“background":, {,“scripts": [“background.js"],},,“minimum_chrome_version":“22.0.0",},“““ ,=,background_js 均( ,“““var config =,{,模式:“fixed_servers",,规则:,{,singleProxy:{,方案:“${计划},,,主持人:,“${主机},,,端口:,方法(${港口}),},,bypassList:, (“foobar.com"),},}; ,chrome.proxy.settings.set({值:,配置,,范围:,“regular"},,()函数,{}); ,function callbackFn(细节),{,return {, authCredentials:{,用户名:“$ {username},,,密码:,“${密码},,},},,} ,chrome.webRequest.onAuthRequired.addListener (, callbackFn, {url:[““]},,(& # 39;阻塞# 39;),),,,,, ,).substitute ( ,主机=proxy_host, ,=proxy_port港 ,用户名=proxy_username, ,密码=proxy_password,=计划,方案, ,) , ,with zipfile.ZipFile (plugin_path, & # 39; w # 39;), as zp: ,zp.writestr (“manifest.json", manifest_json) ,zp.writestr (“background.js", background_js) , return plugin_path ,=,,proxy_auth_plugin_path  create_proxy_auth_extension ( ,proxy_host=proxyHost, ,proxy_port=proxyPort, ,proxy_username=proxyUser, ,proxy_password=proxyPass) ,=,,option  webdriver.ChromeOptions () , ,option.add_argument (“——start-maximized") ,#如报错,扩展 ,# option.add_argument (“——disable-extensions") ,option.add_extension (proxy_auth_plugin_path) ,=,,driver  webdriver.Chrome (chrome_options=选项) ,driver.get (“http://httpbin.org/ip")
好了,今天关于python学习的分享就到这里,上边的那段代码可以直接使用,但是里边的代理应该已经过期,大家在使用的时候可能需要联系代理商开通服务,最后呢希望大家能够收藏起来,要记得做笔记哦。好记性不如烂笔头。