1.简单爬虫————爬取古诗网

本文介绍如何使用Scrapy框架创建并运行一个简单的爬虫项目,包括项目搭建、编写爬虫逻辑及数据抓取等关键步骤。
部署运行你感兴趣的模型镜像

该文章仅供学习,如有错误,欢迎指出

1.开始创建一个项目

mkdir s古诗网

2.进入到文件夹下创建python3的虚拟环境

pipenv install scrapy

3.进入pipenv 下使用scrapy命令创建爬虫项目

pipenv shell
scrapy startproject gushi
cd gushi
scrapy genspider test www.gushiwen.org

这里写图片描述
完成项目的创建

4.写方法
这里对通用爬虫有两个方法

class TestSpider(scrapy.Spider):
    name = 'test'                             #启动爬虫的名字
    allowed_domains = ['www.lagou.com']       #域名,没啥
    start_urls = ['http://www.lagou.com/']    #开始爬取的地址

    def parse(self, response):                
        pass
    def start_requests(self):                
        pass
#爬虫运行之后,程序会先去访问start_requests方法,之后访问start_urls,得到response之后将response交给parse方法

5.使用css选择器解析response 并用yield返回

    def parse(self,response):
        href = response.css('form .pagesright a::attr(href)')[0].extract()
        next_url = response.urljoin(href)
        item = gushiItem()
        all = response.css('.sons')
        for i in all[0:10]:
            title = i.css('.cont p a b::text')[0].extract()
            text = i.css('.contson p::text').extract()
            if len(text) == 0:
                text = i.css('.contson::text').extract()
            chaodai_name = i.css('.source')
            for j in chaodai_name:
                chaodai = j.css('a::text')[0].extract()
                name = j.css('a::text')[1].extract()

            item['title'] = title
            item['text'] = text
            item['chaodai'] = chaodai
            item['name'] = name
            yield item
        yield Request(next_url,callback=self.parse)

6.设定自己的item

class gushiItem(scrapy.Item):
    title = scrapy.Field()
    text  = scrapy.Field()
    chaodai = scrapy.Field()
    name =scrapy.Field()

运行程序

scrapy crawl -o test.json   #生成json文件
scrapy crwal -o test.csv     #生成csv文件
接下来会爬去拉勾网的数据

您可能感兴趣的与本文相关的镜像

Python3.8

Python3.8

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

爬虫是一种按照一定规则,自动抓取万维信息的程序或者脚本。它可以通过定义好的规则,自动抓取络上的信息,并对抓取下来的数据进行筛选和提取,从而获得我们需要的信息。爬虫并不是Python的专利,使用其他编程语言也可以实现爬虫功能,但Python提供了许多方便的库,使得开发爬虫变得更加简单。\[1\] 在爬取古诗的例子中,使用了Python的requests库和BeautifulSoup库来进行网页请求和解析。首先,通过发送HTTP请求获取网页的HTML内容,然后使用BeautifulSoup库对HTML进行解析,提取出需要的信息,如标题、朝代、作者和内容。最后,将提取的信息存储到一个列表中,并将列表写入一个JSON文件中。\[2\] 另外,还可以使用XPath解析HTML内容。XPath是一种用于在XML和HTML文档中进行导航和提取信息的语言。在这个例子中,使用了Python的requests库和lxml库来进行网页请求和解析。通过XPath表达式,可以直接定位到需要的元素,并提取出相应的信息,然后将提取的信息存储到一个列表中,并将列表写入一个JSON文件中。\[3\] 总结来说,Python爬虫可以通过发送HTTP请求获取网页内容,然后使用相应的库对网页进行解析,提取出需要的信息,并进行存储和处理。这样就可以实现对古诗或其他站的信息进行爬取。 #### 引用[.reference_title] - *1* [Python爬虫(一)——爬取古诗文,初识什么是爬虫](https://blog.csdn.net/u014663232/article/details/103459450)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [python爬虫入门_3种方法爬取古诗文站](https://blog.csdn.net/purvispanwu/article/details/106849214)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值