from bs4 import BeautifulSoup import requests import time def captcha(captcha_data): with open("captcha.jpg",'wb') as f: f.write(captcha_data) text=input("请输入验证码") def zhihuLogin(): #构建一个session对象,可以保存cookie(相当于urllib中用的cookiejar) sess…
说明:以前是selenium登陆取cookie的方法比较复杂,改用这个 """ 用requests库模拟登陆人人网 """ import requests #这例有个坑,这个登录地址不是直接看到的登录地址,这是人人网的反爬机制 url = "http://www.renren.com/PLogin.do" # url = "http://www.renren.com/SysHome.do" # 在此输入账号…
介绍   本篇博客将会介绍一个Python爬虫,用来爬取各个国家的国旗,主要的目标是为了展示如何在Python的requests模块中使用POST方法来爬取网页内容.   为了知道POST方法所需要传递的HTTP请求头部和请求体,我们可以使用Fiddler来进行抓包,抓取上网过程中HTTP请求中的POST方法.为了验证Fiddler抓取到的POST请求,可以使用Postman进行测试验证.在Postman中完成测试后,我们就可以用Python的request.POST()方法来写我们的爬虫了.…
requests提供了hook机制,让我们能够在请求得到响应之后去做一些自定义的操作,比如打印某些信息.修改响应内容等.具体用法见下面的例子: import requests # 钩子函数1 def print_url(r, *args, **kwargs): print("raw_url "+r.url) # 钩子函数2 def change_url(r, *args, **kwargs): r.url = 'http://change.url' print("change…
cookie并不陌生,与session一样,能够让http请求前后保持状态.与session不同之处,在于cookie数据仅保存于客户端.requests也提供了相应到方法去处理cookie. 在python之requests模块-session中,我们知道了requests中的session对象能够在请求之间保持cookie,它极大地方便了我们去使用cookie.当我们想设置方法级别中的请求时,可以如下面示例一样操作. import requests s = requests.session(…
http协议本身是无状态的,为了让请求之间保持状态,有了session和cookie机制.requests也提供了相应的方法去操纵它们. requests中的session对象能够让我们跨http请求保持某些参数,即让同一个session对象发送的请求头携带某个指定的参数.当然,最常见的应用是它可以让cookie保持在后续的一串请求中. 下面,通过官方文档中的示例来了解如何使用它. import requests s = requests.Session() # 第一步:发送一个请求,用于设置请…
requests所有功能都能通过"requests/api.py"中的方法访问.它们分别是: requests.request(method, url, **kwargs) requests.get(url, params=None, **kwargs) requests.options(url, **kwargs) requests.head(url, **kwargs) requests.post(url, data=None, json=None, **kwargs) reque…
在之前写过一篇使用python爬虫爬取电影天堂资源的博客,重点是如何解析页面和提高爬虫的效率.由于电影天堂上的资源获取权限是所有人都一样的,所以不需要进行登录验证操作,写完那篇文章后又花了些时间研究了一下python模拟登陆,网上关于这部分的资料很多,很多demo都是登陆知乎的,原因是知乎的登陆比较简单,只需要post几个参数,保存cookie.而且还没有进行加密,很适合用来做教学.我也是是新手,一点点的摸索终于成功登陆上了知乎.就通过这篇文章分享一下学习这部分的心得,希望对那些和我一样的初学者…
了解http常见状态码 可以通过输入错误的密码来找到登陆知乎的post:url 把Headers拉到底部,可以看到form data _xsrf是需要发送的,需要发送给服务端,否则会返回403错误,提示用户没权限访问 获取xsrf的方法: # -*- coding: utf-8 -*- import requests,re #py2里叫cookielib,py3里叫cookiejar try: import cookielib except: import http.cookiejar as c…
一些废话 看了一眼上一篇日志的时间 已然是5个月前的事情了 不禁感叹光阴荏苒其实就是我懒 几周前心血来潮想到用爬虫爬些东西 于是先后先重写了以前写过的求绩点代码 爬了草榴贴图,妹子图网,后来想爬婚恋网上的数据分析 结果在第一步模拟登陆就卡住了 于是改爬知乎 因为有现成代码参考. 1. 模拟登陆 1.1 查看post参数 我用的是Chrome浏览器 按F12打开开发者工具 选到NetWork 然后登陆一次观察在登陆过程中post了哪些参数 collect估计是用来收集要发送的数据 email用来p…