您的位置:首页 > 编程语言 > Python开发

使用python爬取新浪微博的内容

2016-03-26 16:52 543 查看

爬取方式:

浏览某个人的微博内容时,通常我们需要登陆微博。在登录微博这一方面,我们使用一种简单的方式:抓取登录微博的cookie,然后使用cookie来登录微博。这样就可以浏览某个人的微博内容了。

为了爬取方便,我们使用新浪微博的手机网页版

http://weibo.cn/

获取cookie:

① 我们使用的抓包工具是Fiddler,安装Fiddler后,我们来设置一下Winconfig,在IE那项上打勾:



然后 SaveChange 即可。

② 先登录进入微博。(有手机网页版可能登录不进去,一直提示验证码错误,这时你可以打开新浪微博的电脑网页版登录即可)。

③ 打开Fiddler,然后用IE浏览器打开http://weibo.cn/,发现是直接登陆进去了,这是因为cookie的原因。这时我们通过Fiddler来找cookie的内容

首先在Fddler左栏找到 weibo.cn 那项,双击。



然后在右边使用composer可以看到一些信息。



而Cookie那项信息就是我们所需的。我们把”_T_W…”复制下来。

使用python抓包

这里就直接上代码看。


-

# -*- coding: utf-8 -*-

import requests
from bs4 import BeautifulSoup
import time

cook = {"Cookie":" _T_WM....."} #放入你的cookie信息。

for i in range(1,20):

#爬取"头条新闻"的前二十页微博
url = "http://weibo.cn/breakingnews?page=%d"%(i)

html = requests.get(url,cookies=cook).content

#使用Beautiful来解析网页内容。
soup =BeautifulSoup(html,"html.parser")

r = soup.findAll('span',attrs={"class" : "ctt"})
for e in r:
print(e.text)

#设置时间间隔
time.sleep(3)




这样我们就可以爬到头条新闻的微博内容了,当然这里我只爬取了文本信息。




项目地址: github
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: