爬虫复习
Posted xbhog
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了爬虫复习相关的知识,希望对你有一定的参考价值。
格式:
1 proxies = { 2 "http": "http://12.34.56.79:9527", 3 "https": "http://12.34.56.79:9527", 4 }
私密代理:
1 # 如果代理需要使用HTTP Basic Auth,可以使用下面这种格式: 2 proxy = { "http": "xx:xx@xx:xx" } 3 proxy = { "http": "mr_mao_hacker:sffqry9r@61.158.163.130:16816" }
拿cookies参数:
原理:
Cookie名字(Name) Cookie的值(Value) Cookie的过期时间(Expires/Max-Age) Cookie作用路径(Path) Cookie所在域名(Domain), 使用Cookie进行安全连接(Secure)。 ? 前两个参数是Cookie应用的必要条件,另外,还包括Cookie大小(Size,不同浏览器对Cookie个数及大小限制是有差异的)。
格式:
1 # 7. 返回CookieJar对象: 2 cookiejar = response.cookies 3 ? 4 # 8. 将CookieJar转为字典: 5 cookiedict = requests.utils.dict_from_cookiejar(cookiejar)
session:
1 requests.session() 2 # 4. 发送附带用户名和密码的请求,并获取登录后的Cookie值,保存在ssion里 3 ssion.post("http://www.renren.com/PLogin.do", data = data) 4 ? 5 # 5. ssion包含用户登录后的Cookie值,可以直接访问那些登录后才可以访问的页面 6 response = ssion.get("http://www.renren.com/410043129/profile")
处理HTTPS请求 SSL证书验证:
如果SSL证书验证不通过,或者不信任服务器的安全证书,则会报出SSLError
跳过 12306 的证书验证,把 verify 设置为 False 就可以正常请求了
1 1.r = requests.get("https://www.12306.cn/mormhweb/", verify = False) 2 2. 3 # 1. 导入Python SSL处理模块 4 import ssl 5 ? 6 # 2. 表示忽略未经核实的SSL证书认证 7 context = ssl._create_unverified_context() 8 r = requests.get("https://www.12306.cn/mormhweb/", context = context)
随机/添加获取User-Agent:
1 #也可以通过调用Request.add_header() 添加/修改一个特定的header 2 request.add_header("Connection", "keep-alive") 3 ? 4 ? 5 ua_list = [ 6 "Mozilla/5.0 (Windows NT 6.1; ) Apple.... ", 7 "Mozilla/5.0 (X11; CrOS i686 2268.111.0)... ", 8 "Mozilla/5.0 (Macintosh; U; PPC Mac OS X.... ", 9 "Mozilla/5.0 (Macintosh; Intel Mac OS... " 10 ] 11 ? 12 user_agent = random.choice(ua_list) 13 其他:
2.ProxyHandler处理器(代理设置)
以上是关于爬虫复习的主要内容,如果未能解决你的问题,请参考以下文章
关于爬虫的日常复习(13)—— 爬虫requests的初级高级的基本用法
关于爬虫的日常复习(14)—— 爬虫beautifulsoup的初级高级的基本用法