HYPERLINK "/article/python/22972.html" /article/python/22972.html

python模拟登录新浪微博抓取数据(cookielib和urllib2)

发布时间:2014-07-11编辑: HYPERLINK "/" 脚本学堂

本文介绍了python模拟登录新浪微博的例子,python使用cookielib和urllib2模块实现模拟登陆新浪微博抓取数据,需要的朋友参考下。

http是无连接的状态协议,但是客户端和 HYPERLINK "/server/" \t "/article/python/_blank" 服务器端需要保持一些相互信息,比如cookie,有了cookie,服务器才能知道刚才是这个用户登录了网站,才会给予客户端访问一些页面的权限。

用浏览器登录 HYPERLINK "/" \t "/article/python/_blank" 新浪微博,必须先登录,登陆成功后,打开其他的网页才能够访问。用程序登录新浪微博或其他验证网站,关键在于需要保存cookie,之后附带cookie再来访问网站,才能够达到效果。

需要 HYPERLINK "/jb/python/" \t "/article/python/_blank" python的cookielib和urllib2等的配合,将cookielib绑定到urllib2在一起,就能够在请求网页的时候附带cookie。

首先第一步,用firefox的httpfox插件,在浏览器衷开始浏览新浪微博首页,然后登陆,从httpfox的记录中,查看每一步发送了那些数据请求了那个URL;之后在python中模拟这个过程,用urllib2.urlopen发送用户名密码到登陆页面,获取登陆后的cookie,之后访问其他页面,获取微博数据。

代码:?

复制代码代码示例:

#!/usr/bin/python#site: # coding=utf8import urllibimport urllib2import cookielibimport base64import reimport jsonimport hashlib?# 获取一个保存cookie的对象cj = cookielib.LWPCookieJar()# 将一个保存cookie对象,和一个HTTP的cookie的处理器绑定cookie_support = urllib2.HTTPCookieProcessor(cj)# 创建一个opener,将保存了cookie的http处理器,还有设置一个handler用于处理http的URL的打开opener = urllib2.build_opener(cookie_support, urllib2.HTTPHandler)# 将包含了cookie、http处理器、http的handler的资源和urllib2对象板顶在一起urllib2.install_opener(opener)?postdata = {??? 'entry': 'weibo',??? 'gateway': '1',??? 'from': '',??? 'savestate': '7',??? 'userticket': '1',??? 'ssosimplelogin': '1',??? 'vsnf': '1',??? 'vsnval': '',??? 'su': '',??? 'service': 'miniblog',??? 'servertime': '',??? 'nonce': '',??? 'pwencode': 'wsse',??? 'sp': '',??? 'encoding': 'UTF-8',??? 'url': '/ajaxlogin.php?framelogin=1&callback=parent.sinaSSOController.feedBackUrlCallBack',??? 'returntype': 'META'}?def get_servertime():???? url = '/sso/prelogin.php?entry=weibo&callback=sinaSSOController.preloginCallBack&su=dW5kZWZpbmVk&client=ssologin.js(v1.3.18)&_=1329806375939'??? data = urllib2.urlopen(url).read()??? p = pile('\((.*)\)')??? try:??????? json_data = p.sear

pythonurllib新浪微博_python模拟登录新浪微博抓取数据(cookielib和urllib2).doc相关推荐

  1. Java模拟登录并抓取数据

    问题: 最近做一个抓取数据的项目,发现网上很多资料不完备,或者按照代码执行不能真实爬取数据,自己特别根据自己的网站进行登录并进行数据爬取. 未登录 登录后,正常抓取数据截图(预期目标数据) 解决办法: ...

  2. 微博pythonurllib登陆是什么_python模拟登录新浪微博抓取数据(cookielib和urllib2)

    http是无连接的状态协议,但是客户端和服务器端需要保持一些相互信息,比如cookie,有了cookie,服务器才能知道刚才是这个用户登录了网站,才会给予客户端访问一些页面的权限. 用浏览器登录新浪微 ...

  3. python 登录新浪微博_Python 模拟登录新浪微博

    在极客学院中看了一个关于爬虫的视频,然后自己实现一遍,并做此记录. 视频链接:http://www.jikexueyuan.com/course/995_4.html?ss=1 该文中的登录方式已经失 ...

  4. 模拟web访问有登录且有验证码的登录后抓取数据

    模拟web访问有登录且有验证码的登录后抓取数据 1 取验证码 1 在窗体上放一个picturebox (imgValidate)存放获取的验证码图片, 2 用浏览器的开发者工具firefox (f12 ...

  5. 模拟微信浏览器抓取数据

    步骤: 1. 配置谷歌浏览器,按f12进入检查,右下角点击选择settings 2. 选择device,点击add 3. 填写userAgent 微信安卓UA Mozilla/5.0 (Linux; ...

  6. pythonurllib新浪微博_Python代码登录新浪微博并自动发微博

    前言 对于很少玩微博@張行之_的我来说,微博内容少的可怜.所以本人就想:能不能写个成功程序来帮我发微博.这个程序要满足以下要求: 自动化,自动登录微博,自动发微博. 微博内容要有意义,不能是随机生成的 ...

  7. python 登录新浪微博_模拟登录新浪微博(Python)

    PC 登录新浪微博时, 在客户端用js预先对用户名.密码都进行了加密, 而且在POST之前会GET 一组参数,这也将作为POST_DATA 的一部分. 这样, 就不能用通常的那种简单方法来模拟POST ...

  8. 利用cookie进行模拟登录并且抓取失败

    首先是朋友发现每次对撞md5都要上网站登录然后进行对撞,感觉好麻烦,想写一个脚本,输入md5值直接输出 然后就上车了 1 模拟登录 老规矩,先要提交表单,进行抓包(我用的fiddler)进行抓包,看见 ...

  9. java模拟登陆系统_Java模拟登录系统抓取内容【转载】

    1 @Component2 public class Login extendsBaseJobs {3 4 SimpleDateFormat sdf = new SimpleDateFormat(&q ...

最新文章

  1. 【高级数据类型2】- 10. 接口
  2. 这10道springboot常见面试题你需要了解下
  3. Linux - 手册(manual)使用 详解
  4. Go Web学习(2)——实现中间件(middleware)
  5. [转载] Python3.X之——卷积计算
  6. Winform中自定义xml配置文件后对节点进行读取与写入(XmlDocument)
  7. 编译好的C一执行就崩溃,第一句输出都没有,是怎么回事?
  8. 微博android源码,新浪微博客户端源码 android
  9. 数商云医药行业SCM供应链管理系统应用场景、运用模式
  10. linux 输入两个命令,Linux两条命令touch、vi
  11. Mencoder MPlayer 参数详解
  12. 用字体,每次都要先开软件,ifonts闪退?不好用怎么办
  13. 本科课程【数字图像处理】实验5 - 空洞填充
  14. 集体智慧编程——使用决策树发现潜在客户
  15. 火车头采集器V10下载-火车头采集器免费
  16. 2018数据技术嘉年华-河南站7.13相约!
  17. 头文件stdio与stdlib.h的区别
  18. RSA算法加密解密举例
  19. 暴力破解与验证码安全——BS架构暴力猜解
  20. android x21,vivo X21成全球首批Android P适配机型!vivo :不小心就秀实力了

热门文章

  1. beanshell断言_Jmeter之BeanShell断言使用
  2. 树莓派自动驾驶小车(Donkey Car)调试运行
  3. FPGA学习.0——FPGA是什么
  4. 华为防火墙技术-防火墙基础
  5. c++动态规划经典算例
  6. python打印转义字符_Python print用法和转义符
  7. 互联网巨头亚马逊公司微服务化经验
  8. 如何通过命令行使用Wisdom RESTClient?
  9. 2023 号卡推广管理系统PHP源码 有后台版v1.0
  10. 云南大学计算机专业双一流排名,42所双一流、39所985大学四档排名分析