Python爬虫入门案例6:scrapy的基本语法+使用scrapy进行网站数据爬取

news/2024/7/19 10:07:17 标签: python, 爬虫, scrapy

几天前在本地终端使用pip下载scrapy遇到了很多麻烦,总是报错,花了很长时间都没有解决,最后发现pycharm里面自带终端!(狂喜),于是直接在pycharm终端里面写scrapy

这样的好处就是每次不用切换路径了,pycharm会直接把路径定位到项目包的路径下,非常方便。

而且下载scrapy可以直接在一个文件里面写import scrapy,然后install scrapy包就可以了,很快就下完了。

这时候我们就可以直接进行scrapy程序的创建了。

基本语法:

(1)创建scrapy爬虫项目

        scrapy startproject 项目名

(2)创建爬虫文件

        scrapy genspider 爬虫文件名 爬取的网页

(3)运行爬虫代码

        scrapy crawl 爬虫的名字

这里的爬虫主代码,需要在spiders文件中写

下面举个例子,使用scrapy来爬取汽车之家的汽车型号,与其对应的价格

import scrapy


class CarsSpider(scrapy.Spider):
    name = "cars"
    allowed_domains = ["https://car.autohome.com.cn/price/brand-15.html"]
    start_urls = ["https://car.autohome.com.cn/price/brand-15.html"]

    def parse(self, response):
        print("-------------")
        name_list=response.xpath("//div[@class='main-title']/a/text()")
        price_list=response.xpath("//div[@class='main-lever']//span/span/text()")
        for i in range(len(name_list)):
            name=name_list[i].extract()
            price=price_list[i].extract()
            print("-------------")
            print(name,price)

爬取结果:

 


http://www.niftyadmin.cn/n/356068.html

相关文章

数字逻辑习题

第一次作业 第二次作业 第三次作业 卡诺图最小项 计算模数M考察74LS161的特点 计数器数据选择器 在A和C加上非门即可 求计数器的模数M 该计数器是环形计数器(循环右移),模数根据初始状态而定 由n个移位寄存器构成的环形计数器最大可能模值为n…

Python3安装pyhanlp最佳解决方法

1、Hanlp介绍 Hanlp是一款中文自然语言处理工具。Hanlp支持多种自然语言处理任务,包括分词、词性标注、命名实体识别、依存句法分析、情感分析、文本分类等。其主要优点包括: 高准确率:Hanlp采用了基于神经网络的分词方法,有效提…

Vicuna:斯坦福开源一个性能相当于90%ChatGPT的聊天机器人

自从Meta公司发布LLaMA以来,围绕它微调和开发的模型越来越多,这得益于它的性能和效果,2023年3月份发布的草泥马(Alpaca)是由Meta的LLaMA 7B微调而来的全新模型,仅用了52k数据,性能约等于GPT-3.5…

【VictoriaMetrics】VictoriaMetrics单机版批量和单条数据写入(opentsdb格式)

VictoriaMetrics单机版支持以opentsdb格式的数据写入包含linux形式和postman形式,写入支持单条数据写入以及多条数据写入,下面操作演示下如何使用 1、首先需要启动VictoriaMetrics单机版服务 注意,如果支持opentsdb协议需要在启动单机版VictoriaMetrics的时候加上opentsdbH…

STM32寄存器映射

1. 寄存器基本原理 寄存器是单片机内部一种特殊的内存,可以实现对单片机各个功能的控制,我们编写程序最终就是去控制寄存器 下面的举例平台为STM32F407ZG 1.1 STM32寄存器分类 大类小类说明 内核寄存器 内核相关寄存器 包含R0~R15、xPSR、特殊功能寄…

xss跨站,订单,shell箱子反杀记

打开一个常见的订单靶场,老师自己搭建的 这个是可以进行xss漏洞的测试,凡是有这种数据交互的地方,前端有一个数据的接受,后端是数据的显示,这个过程就符合漏洞产生的前提条件,将输入的数据进行个显示&#…

STL --- 2、容器 (7)queue

目录 1、std::queue 的基本操作 2、std::queue 队列的应用场景 3、std::queue 实例 队列(Queue)是一种先进先出(FIFO)的数据结构,类似于现实生活中排队等待服务的场景。队列中的元素只能在队列的末尾添加&#xff0…

FreeRTOS中断配置和临界值

Cortx-M 中断 优先级分组 Cortex-M3允许具有较少中断源时使用较少的寄存器位指定中断源的优先级,因此STM32把指定中断优先级的寄存器位减少到4位。抢占优先级的级别高于响应优先级。而数值越小所代表的优先级就越高。高的抢占式优先级可以打断低的抢占式优先级&am…