美文网首页编程地带
百度贴吧用户爬虫

百度贴吧用户爬虫

作者: MA木易YA | 来源:发表于2019-03-24 10:31 被阅读2次

    这里随便选取一个贴吧(python),进入会员页面,抓取会员信息,包括用户名、昵称、最近常逛的贴吧名,吧龄、发帖数

image.png

items.py

class TiebaUserItem(scrapy.Item):
    # define the fields for your item here like:
    # name = scrapy.Field()
    nickname = scrapy.Field()
    username = scrapy.Field()
    attention = scrapy.Field()
    age = scrapy.Field()
    post_number = scrapy.Field()

    对于简单字段逻辑还是不难理解的,直接用srapy逐个获取就行,翻页也不难处理,这里如果想要抓取全部的关注贴吧名或者关注人、被关注人的话会涉及页面嵌套,比较复杂,下次更新的时候着重介绍,这里仅是简化版的基础信息抓取,看代码就能懂了。

spider.py

class TiebaSpiderSpider(scrapy.Spider):
    name = 'tieba_spider'
    allowed_domains = ['tieba.baidu.com']
    start_urls = ['http://tieba.baidu.com/bawu2/platform/listMemberInfo?word=python&pn=1']


    def parse(self, response):
        href_list = response.xpath('//span[starts-with(@class,"member")]/div/a/@href').extract()
        for href in href_list:
            yield scrapy.Request(url="http://tieba.baidu.com" + href, callback=self.parse_tag)
        next_link = response.xpath('//div[@class="tbui_pagination tbui_pagination_left"]/ul/li/a[@class="next_page"]/@href').extract()
        if next_link:
            next_link = next_link[0]
            yield scrapy.Request(url="http://tieba.baidu.com" + next_link, callback=self.parse)

    def parse_tag(self, response):
        item = TiebaUserItem()
        item['nickname'] = response.xpath('//div[@class="userinfo_title"]/span/text()').extract_first()
        if response.xpath('//div[@class="userinfo_userdata"]/span[@class="user_name"]/text()').extract_first():
            item['username'] = response.xpath('//div[@class="userinfo_userdata"]/span[@class="user_name"]/text()').extract_first()[4:]
        item['attention'] = response.xpath('//div[@class="ihome_forum_group ihome_section clearfix"]/div[@class="clearfix u-f-wrap"]/a//text()').extract()
        if response.xpath('//span[@class="user_name"]//span[2]/text()'):
            item['age'] = response.xpath('//span[@class="user_name"]//span[2]/text()').extract_first()[3:]

        if response.xpath('//span[@class="user_name"]//span[4]/text()'):
            item['post_number'] = response.xpath('//span[@class="user_name"]//span[4]/text()').extract_first()[3:]

        return item
  • 更多爬虫代码详情查看Github
0.jpg

相关文章

  • 百度贴吧用户爬虫

    这里随便选取一个贴吧(python),进入会员页面,抓取会员信息,包括用户名、昵称、最近常逛的贴吧名,吧龄、发帖数...

  • 百度:贴吧吧主,我是你爹!

    百度开始对贴吧下手了。 有贴吧用户爆料称,百度贴吧正式启动吧主考核和激励制度,该制度将对贴吧吧主进行“业绩”考核。...

  • 百度贴吧高级爬虫

    最近做了一个完整版的百度贴啊全吧爬虫,过程比较具有代表性,分析过来供大家参考。代码在解禁后后贴吧爬虫查看。 项目结...

  • 百度贴吧爬虫

    利用requests、正则表达式和Beautiful爬取贴吧用户名、评论和图片 定义工具类——去除爬取项多余内容 ...

  • Python3之百度贴吧小爬虫

    华为贴吧爬虫 程序爬了6000页就被百度封掉,你们回去可以改下贴吧的,比如爬小米吧或者其他娱乐的吧,将页面数改成小...

  • 30分钟!用python的request模块抓取百度贴吧内容

    001 我想通过自动抓取百度贴吧 “python爬虫吧“ 里的帖子数据,找到那些付费写爬虫的帖子,赚点零花钱!为了...

  • 百度贴吧16岁,互联网已是沧海桑田

    用户名:李彦宏。吧龄:16年。发贴:124。 这是贴吧1号用户李彦宏在百度贴吧的个人页面显示的最新消息。在贴吧,李...

  • 多线程爬虫-BeautifulSoup

    线程基类 爬虫百度贴吧中某帖子图片 先要安装BeautifulSoup 参考 BeautifulSoup官网api

  • Python_Scrapy-基础实践

    爬虫实践 获取百度贴吧的内容 以滁州学院吧为例 贴吧地址: 链接的末尾处:&ie=utf-8 表示该连接采用的是u...

  • 引流案例:线下眼镜门店利用百度贴吧引流

    利用百度系产品引流不行了? 看下百度贴吧的数据吧: 注册用户15亿+,贴吧总数820万+,主题总数35亿+,留言总...

网友评论

    本文标题:百度贴吧用户爬虫

    本文链接:https://www.haomeiwen.com/subject/gfwyvqtx.html