Python模拟登录wap版百度贴吧+自动回贴

模拟登录的原理都差不多,大致都是这样:

  1. 打开首页获取相关cookie;
  2. 提交登陆表单(即用户名与密码);
  3. 确认是否登录成功;

如果想了解更具体的原理与相关知识,推荐到详解抓取网站,模拟登陆,抓取动态网页的原理和实现(Python,C#等)。(不过这一系列博文实在太绕太绕太绕,数十篇文章互相穿插让人头晕眼花,我前后断断续续历时几个月才搞懂并编码测试成功)

模拟登录的关键点有两个: 1.使用抓包工具(如chrome开发者控制台)分析表单提交的真实链接与相关get/post参数 2.编写管理cookie的代码

对于第一点,在上述链接中已经有足够详细的教程,不再赘述;至于第二点,使用requests模块就可以非常简单完美地解决,它可以保持管理同一会话中的cookie,使用方法在我上一篇博文有提到,相当方便。

登录成功之后,就差自动回帖了。wap网页比PC网页简单很多,使得很多操作都容易了很多,本次实践中我使用了BeautifulSoup模块来解析网页。

在这里以post方法提交的表单中常常都会包含一些type="hidden"的元素,在模拟提交的时候不能缺少。


结尾语

话说当完成一项曾经的难题之后,总是发现没什么详细记录的欲望了。。在这里我大概描述了一下实现的路线,相关代码我放在我的Github上了,如果有什么问题或建议欢迎交流!