scrapy笔记01——爬取糗事百科段子和上传者名称

scrapy爬虫项目及爬虫文件创建(terminal):
1、在terminal进入要创建项目的目录

2、在terminal创建工程:scrapy startproject xxxProject(工程名)

3、cd xxxProject进入刚创建的工程

4、在spiders子目录中创建一个爬虫文件:scrapy genspider spiderName www.xxx.com(要 爬取的目标网页)

5、编写好爬虫文件后,不能立即执行,先在配置文件setting.py中,将ROBOTSTXT_OBEY 改为False,并进行User伪装。
在这里插入图片描述
6、执行爬虫:scrapy crawl spiderName (–nolog)【执行时加括号里的内容,则只打印结 果,不打印日志信息】、终端ctrl+l是【清屏快捷键】

【例】爬取糗事百科的第一页段子和作者内容
爬取网站:https://www.qiushibaike.com/text/
工程名:qiubaiPro
爬虫文件:qiubai.py

#qiubai.py  文件内容
import scrapy

class QiubaiSpider(scrapy.Spider):
    name = 'qiubai'
    #allowed_domains = ['www.xxx.com']
    start_urls = ['https://www.qiushibaike.com/text/']

    #数据解析操作在parse函数内进行
    def parse(self, response):
        #解析:作者的名称+段子内容
        div_list = response.xpath('//div[@class="col1 old-style-col1"]/div')
        for div in div_list:
            #xpath返回列表,但列表元素一定是selector类型对象
            #extract可以将selector对象中data参数存储的字符串提取出来
            # author = div.xpath('./div[1]/a[2]/h2/text()')[0].extract()
            #extract_first()表示将列表中对应的第0个元素的selector对象进行extract操作
            author = div.xpath('./div[1]/a[2]/h2/text()').extract_first()
            content = div.xpath('./a[1]/div/span//text()').extract()
            #join(): 连接字符串数组。
            # 将字符串、元组、列表中的元素以指定的字符(分隔符)连接生成一个新的字符串
            content = ''.join(content)

            print(author,content)

执行结果:

忧郁的创可贴



有人说,这是个看脸的世界,我不赞同这说法,我用我亲身经历,证明了能力比颜值更重要。大学毕业后,和闺蜜去我们当地一家有名气的公司,面试销售
,话说我这闺蜜人长得十分漂亮。才招聘一人,却来了几十个应聘者,竞争十分激烈。我和闺蜜一路过关斩将,到了最后阶段,由老板亲自面试。老板问了
我们一些问题后,果断拍板宣布我被录取,我还有点懵,老板说:本公司看中的是能力,不是颜值。遇到这样的老板,还有什么说的,唯有努力工作报答他
啊。
…
查看全文

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值