1.re为正则模块,requests为请求模块,()在正则中只取括号里的,$在正则中一般跟在不固定的参数后,固定的不用写
2.反向代理和正向代理的区别就是:正向代理代理客户端,反向代理代理服务器。我知道服务器地址,让中间件帮我去访问服务器地址,就是正向代理,我不清楚服务器地址,由中间件访问服务器地址,是反向代理。
3.因为cookie是有有效期的,所以没法做到一次登录,终生有效。所以,一般的登录模式,就是:
第一步:先尝试cookie登录
第二步:如果cookie无法登录成功,就使用用户名密码登录,将新的cookie保存下来。
4.name 是当前模块名,当模块被直接运行时模块名为 main 。这句话的意思就是,当模块被直接运行时,以下代码块将被运行,当模块是被导入时,代码块不被运行。
5.requests保存cookie
session代表某一次连接
mafengwoSession = requests.session()
因为原始的session.cookies 没有save()方法,所以需要用到cookielib中的方法LWPCookieJar,这个类实例化的cookie对象,就可以直接调用save方法。
给这次连接的cookies加上一个save方法
mafengwoSession.cookies = cookielib.LWPCookieJar(filename=“mafengwoCookies.txt”)
6.requests的text和content的区别为content是原生的
7…*?为非贪婪模式
8.json和对象的互转,dumps转字符串,dump可以直接序列化到磁盘,load反序列化
9.js是tyeof ,python是type
10.理论上来说所有参数都和正常浏览器发送相同就能访问接口,但是每次生成ua算法不知道,就无法爬取到数据。