简单爬虫爬取微博数据(一)

Step1

首先当然要配置好scrapy啦,配置好以后在终端里新建项目

    scrapy startproject weibo

然后打开items.py,我们在里面加入我们这次要爬下来的数据

      ids = scrapy.Field()

      comments = scrapy.Field()

      reposts = scrapy.Field()

我们只是做一个小测试,爬取一下陈教主的微博首页的赞数,评论数等

Step2

爬取微博最好用手机版的,我们打开陈乔恩的微博,然后检查元素,看一下到底陈教主的微博首页有哪些信息。


简单爬虫爬取微博数据(一)_第1张图片
html截图

啦啦啦!这就是我们要找的地方啦。

Step3


简单爬虫爬取微博数据(一)_第2张图片
py代码

for sel in response.xpath('/html/body/div[@id]'):

     item = WeiboItem()

     item['ids'] = sel.xpath('div/a[contains(@href,\'attitude\')]/text()').extract()

     item['comments'] = sel.xpath('div/a[contains(@href,\'comment\')]/text()').extract()

     item['reposts'] = sel.xpath('div/a[contains(@href,\'repost\')]/text()').extract()

yield item

现在进入重头戏,爬虫主程序,首先当然给爬虫命个名,然后写一下要爬的网址的url,然后就是处理数据啦,根据前面那张html的结构,我们来看一下,选择xpath语句来找到我们想要的内容。

 tips:

     注意哦,xpath里面的contains可以帮助我们选择需要包含的属性!真是太tm好用了!

Step4

在终端里运行我们的小爬虫

      scrapy crawl Weibo -o items.csv

这个语句会生成一个csv文件,一开始用excel打开会看到一堆乱码...不过不用担心,只是存储的时候用的unicode编码而已,我们用记事本打开瞬间就可以变成熟悉的中文了呢~~

总结

小爬虫终于搞定了呢,现在还只能爬取单个页面,下一步就是用它实现爬取多个页面啦~

你可能感兴趣的:(简单爬虫爬取微博数据(一))