【爬虫作业】python爬虫作业——爬取汽车之家

news/2024/7/19 9:28:37 标签: 爬虫, python, 汽车

爬取汽车之家期末作业:

 

代码如下所示: 

python">import random
import time

import requests  #发送网络请求
import parsel
import csv
# 1.发送网络请求
headers  = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36 Edg/96.0.1054.62',
    'cookie' :'cna=4PnlF84bLHECATzVzKSn1QVt; sca=affb7120; atpsidas=0812ac0d0153e7414eefc32b_1634996188_1; atpsida=341b48c86ac6a1e14421aa46_1640613502_50'
   }
csv_lmy = open('lmy-1.csv',mode='a',encoding='utf-8-sig',newline='')
csv_write = csv.writer(csv_lmy)#将文件以csv的方式保存
csv_write.writerow(['品牌','里程(万公里)','车龄','城市','认证','售价(万元)','原价(万元)','链接','车辆图片',])#将列表写入csv的前一行
for page in range(1,101):
    print(f'------------正在爬取第{page}页----------------------')
    url = f'https://www.che168.com/china/a0_0msdgscncgpi1ltocsp{page}exx0/'
    response = requests.get(url=url , headers = headers)
    # 2。获取数据 网页源代码
    print(response.text)
    lmy_html = response.text
    # 3.解析数据
    selector = parsel.Selector(lmy_html)
    lis = selector.css('.viewlist_ul li')
    for li in lis:
        try:
            name = li.css('.card-name::text').get()    #车名
            unit = li.css('.cards-unit::text').get()    #信息
            kemNumber = unit.split('/')[0]
            years = unit.split('/')[1]
            city = unit.split('/')[2]
            business = unit.split('/')[3]
            pirce = li.css('.pirce em::text').get()   #价格
            yprice = li.css('s::text').get()           #原价
            carinfo = li.css('.carinfo::attr(href)').get() #详情页链接
            img = li.css('img::attr(src)').get()       #图片链接
            #print(name,kemNumber,years,city,business,pirce,yprice,carinfo,img)
            csv_write.writerow([name,kemNumber,years,city,business,pirce,yprice,carinfo,img])
        except:
            pass





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

相关文章

<网络安全>《14 日志审计系统》

1 概念 日志审计系统是用于全面收集企业IT系统中常见的安全设备、网络设备、数据库、服务器、应用系统、主机等设备所产生的日志(包括运行、告警、操作、消息、状态等)并进行存储、监控、审计、分析、报警、响应和报告的系统。 日志审计系统是一种用于…

k8s filebeat 应用日志搜集

方案: 采用node上部署filebeat,并监控node上的日志记录,应用pod的日志文件它通过磁盘挂载将其输出到node的本地filbeat监控目录上。 实施: filebeat使用daemonSet(见附录)进行构建: 【k8s】…

数据库管理-第146期 最强Oracle监控EMCC深入使用-03(20240206)

数据库管理145期 2024-02-06 数据库管理-第146期 最强Oracle监控EMCC深入使用-03(20240206)1 概览2 性能中心3 性能中心-Exadata总结 数据库管理-第146期 最强Oracle监控EMCC深入使用-03(20240206) 作者:胖头鱼的鱼缸&…

项目-HTTP服务器+Reactor模型

HTTP服务器Reactor模型 一、HTTP服务器1.概念 二、Reactor模型1.概念2.分类单Reactor单线程:单I/O多路复用业务处理单Reactor多线程:单I/O多路复用线程池(业务处理)多Reactor多线程:多I/O多路复用线程池(业…

PyTorch的10个基本张量操作

PyTorch是一个基于python的科学计算包。它的灵活性允许轻松集成新的数据类型和算法,并且框架也是高效和可扩展的,下面我们将介绍一些Pytorch的基本张量操作。 Tensors 张量Tensors是一个向量,矩阵或任何n维数组。这是深度学习的基本数据结构…

【OpenVINO™】在 MacOS 上使用 OpenVINO™ C# API 部署 Yolov5 (下篇)

在 MacOS 上使用 OpenVINO™ C# API 部署 Yolov5 (下篇) 项目介绍 YOLOv5 是革命性的 "单阶段"对象检测模型的第五次迭代,旨在实时提供高速、高精度的结果,是世界上最受欢迎的视觉人工智能模型,代表了Ult…

嵌入式linux驱动开发之网络设备驱动

https://bbs.csdn.net/topics/612247295 简介 Linux网络设备驱动是Linux内核中的一个重要组成部分,它负责网络设备的底层数据传输和设备控制。与字符设备驱动和块设备驱动相比,网络设备驱动的特点和功能如下: 首先,网络设备驱动…

计算机毕业设计 基于SpringBoot的线上教育培训办公系统的设计与实现 Java实战项目 附源码+文档+视频讲解

博主介绍:✌从事软件开发10年之余,专注于Java技术领域、Python人工智能及数据挖掘、小程序项目开发和Android项目开发等。CSDN、掘金、华为云、InfoQ、阿里云等平台优质作者✌ 🍅文末获取源码联系🍅 👇🏻 精…