不想误导,若有错误,希望各位不吝指教!!
代理:proxies参数
格式:
proxies = {
"http": "http://12.34.56.79:9527",
"https": "http://12.34.56.79:9527",
}
私密代理:
# 如果代理需要使用HTTP Basic Auth,可以使用下面这种格式:
proxy = { "http": "xx:xx@xx:xx" }
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个数及大小限制是有差异的)。
格式:
# 7\. 返回CookieJar对象:
cookiejar = response.cookies
# 8\. 将CookieJar转为字典:
cookiedict = requests.utils.dict_from_cookiejar(cookiejar)
session:
requests.session()
# 4\. 发送附带用户名和密码的请求,并获取登录后的Cookie值,保存在ssion里
ssion.post("http://www.renren.com/PLogin.do", data = data)
# 5\. ssion包含用户登录后的Cookie值,可以直接访问那些登录后才可以访问的页面
response = ssion.get("http://www.renren.com/410043129/profile")
处理HTTPS请求 SSL证书验证:
如果SSL证书验证不通过,或者不信任服务器的安全证书,则会报出SSLError
跳过 12306 的证书验证,把 verify 设置为 False 就可以正常请求了
1.r = requests.get("https://www.12306.cn/mormhweb/", verify = False)
2.
# 1. 导入Python SSL处理模块
import ssl
# 2. 表示忽略未经核实的SSL证书认证
context = ssl._create_unverified_context()
r = requests.get("https://www.12306.cn/mormhweb/", context = context)
随机/添加获取User-Agent:
#也可以通过调用Request.add_header() 添加/修改一个特定的header
request.add_header("Connection", "keep-alive")
ua_list = [
"Mozilla/5.0 (Windows NT 6.1; ) Apple.... ",
"Mozilla/5.0 (X11; CrOS i686 2268.111.0)... ",
"Mozilla/5.0 (Macintosh; U; PPC Mac OS X.... ",
"Mozilla/5.0 (Macintosh; Intel Mac OS... "
]
user_agent = random.choice(ua_list)
其他: