python爬微博步骤手机_新浪微博爬取笔记(2):wap端模拟登陆 python

===================

看了其他人的博客都写的很简洁干净,我这边的排版简直要晕。图和代码一起上,小白每一步都要有讲解。。。

===================

虽然weibo.com的模拟登陆用http://www.cnblogs.com/houkai/p/3487816.html的代码成功了,但是新版微博的标签太复杂,而且爬取一个用户的微博列表的时候,最底端是“正在加载”,不好模拟。因此改爬weibo.cn。

除此之外,weibo.cn比weibo.com更适合爬取的原因还有:

1、weibo.cn的模拟登陆步骤比weibo.com要简单;

2、微博列表是分页显示,目前每页有5条;

3、评论,转发列表都是静态加载。

先进行模拟登陆。模拟登陆有两种方法,在pc端操作:

1、user-agent用UC浏览器,模仿手机端,如http://blog.csdn.net/zhaolina004/article/details/28699095,步骤简单。需要注意的是,虽然在手机端可以采用保存登陆后页面即保存cookie下次直接登陆的方式,pc端则不行。

####15年4月 登陆后地址变为http://weibo.cn/?vt=4 不再显示gsid (事实上显示gsid的网址重定向到weibo.cn/?vt=4,以下截图中会显示,直接访问并不能进入登陆页面,用UC也不行)

####放弃

2、user-agent用Firefox浏览器,如http://qinxuye.me/article/simulate-weibo-login-in-python/,这篇是12年的文章,现在是15年4月,登陆页面地址和请求数据等都发生了改变,需要做一些修改。

=====================================================

试一下方法2, 边做边写:

1 importurllib22 importurllib3 importcookielib4

5 importlxml.html as HTML6

7 classFetcher(object):8 def __init__(self, username=None, pwd=None, cookie_filename=None):9 self.cj =cookielib.LWPCookieJar()10 if cookie_filename is notNone:11 self.cj.load(cookie_filename)12 self.cookie_processor =urllib2.HTTPCookieProcessor(self.cj)13 self.opener =urllib2.build_opener(self.cookie_processor, urllib2.HTTPHandler)14 urllib2.install_opener(self.opener)15

16 self.username =username17 self.pwd =pwd18 self.headers = {'User-Agent':'Mozilla/5.0 (Windows NT 6.1; rv:14.0) Gecko/20100101 Firefox/14.0.1',19 'Referer':'','Content-Type':'application/x-www-form-urlencoded'}20

21 defget_rand(self, url):22 headers = {'User-Agent':'Mozilla/5.0 (Windows;U;Windows NT 5.1;zh-CN;rv:1.9.2.9)Gecko/20100824 Firefox/3.6.9',23 'Referer':''}24 req =urllib2.Request(url ,urllib.urlencode({}), headers)25 resp =urllib2.urlopen(req)26 login_page =resp.read()27 rand = HTML.fromstring(login_page).xpath("//form/@action")[0]28 passwd = HTML.fromstring(login_page).xpath("//input[@type='password']/@name")[0]29 vk = HTML.fromstring(login_page).xpath("//input[@name='vk']/@value")[0]30 returnrand, passwd, vk31

32 def login(self, username=None, pwd=None, cookie_filename=None):33 if self.username is None or self.pwd isNone:34 self.username =username35 self.pwd =pwd36 assert self.username is not N

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 取微博数据是指通过爬取微博网站上的内容,获取用户在微博上发布的各种信息,包括文字、图片、视频等。爬取微博数据的方式可以使用Python编程语言中的虫技术来实现。 Python虫是一种自动获取网页内容的技术,通过模拟浏览器行为,可以获取网页上的数据。对于微博数据爬取,可以通过Python爬取微博官方API接口或者直接爬取微博网页上的内容。 爬取微博数据需要首先进行身份认证和授权,获取访问权限。然后,可以通过API接口或者请求微博网页,获取微博网站上的数据。可以将数据保存在数据库中,或者直接进行分析和处理。 爬取到的微博数据可以用于各种目的,如数据开发、微博分析等。数据开发是指对爬取到的数据进行清洗、整理和存储,以便后续的数据分析和应用。微博分析则是对微博数据进行统计和分析,了解用户的行为和趋势,找出有价值的信息。 对于爬取微博数据,可以通过可视化的方式呈现,以更直观地展示数据的分布和变化趋势。可视化可以使用各种Python数据可视化库,如matplotlib、seaborn等,制作各种图表、图像和地图等,提供更好的数据展示效果。 总结来说,通过Python编程语言中的虫技术,可以取得微博数据并进行数据开发、微博分析和可视化处理,从中获取有价值的信息。 ### 回答2: 取微博数据是指使用虫技术从微博平台上抓取用户的相关信息,通过获取微博的内容、点赞数、转发数、评论数等数据,并进行可视化分析以及数据开发,以了解用户行为和趋势。 在这个过程中,可以使用Python编写虫程序来自动化地访问微博网站并获取所需数据虫程序可以模拟用户登录微博,搜索关键词或用户,获取相关微博内容,并提取所需的数据信息。 通过爬取微博数据,可以进行数据开发,包括数据清洗、处理以及存储。数据清洗是指对原始数据进行去除噪声、格式转换、去重等操作,以保证数据的准确性和一致性。数据处理是指对清洗后的数据进行加工处理,如对文字进行分词、提取关键词等。数据存储则是将处理后的数据以合适的格式保存在数据库或文件中,以备后续使用。 除了数据开发,还可以进行微博数据的可视化分析。通过使用数据可视化工具和库,将微博数据转化为图表、地图、词云等可视化形式,从而更直观地展示数据的分布和趋势。通过分析微博数据可视化结果,可以发现用户关注的热点话题、用户行为模式等信息,为企业和个人提供决策参考。 总之,通过取微博数据并进行可视化分析以及数据开发,我们可以深入了解用户行为和趋势,为企业和个人提供更有针对性的决策和推广策略。同时,这也为数据分析领域的研究和应用提供了丰富的资源和实践案例。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值