Scrapy代码分享(初学)

今天学习Scrapy,尝试用框架爬取糗事百科,但是糗事百科似乎关停,尝试用不同的网站代替。选择“段子网”进行段子爬取。
由于之前建立项目是用糗事百科命名,所以代码变量还是选择的糗事百科,如果有看到这篇博文的同学还请体谅这一点,如果试图运行代码,还请在一开始搭建了scrapy框架,并且项目名称按下图标注。
这是项目的截图
在上图中标蓝的qsbk_spider.py文件下的代码如下:

import scrapy
from scrapy.http.response.html import HtmlResponse
from scrapy.selector.unified import SelectorList

class QsbkSpiderSpider(scrapy.Spider):
    name = 'qsbk_spider'
    allowed_domains = ['ishuo.cn']
    start_urls = ['https://ishuo.cn/']

    def parse(self, response):
        duanzidivs=response.xpath("//div[@id='list']/ul/li")
        index=0
        for duanzidiv in duanzidivs:
            author=duanzidiv.xpath(".//div[@class='info']/a/text()").get()
            content=duanzidiv.xpath(".//div[@class='content']//text() ").getall()
            content="".join(content).strip()
            index=index+1
            print(index)
            print("*"*20)
            print(author)
            print(content)
            print("*" * 20)
            

细心的你一定发现了除开这个qsbk_spider.py文件,与原始框架相比 还多了一个start.py的文件,这个文件是用来替代复杂的cmd操作的,这样就不要我们每次都进入到命令行去运行这个项目,代码如下:

from scrapy import cmdline
#在pycharm中运行cmd指令
cmdline.execute('scrspy crawl qsbk_spider'.split())

然后我们运行scrapy项目的时候就不用每次都去命令行啦,只需运行这个start文件就好了(本项目执行于2019/10/27,晚8点)

发布了7 篇原创文章 · 获赞 0 · 访问量 1243

猜你喜欢

转载自blog.csdn.net/Hello_Bye/article/details/102770495