【爬虫作业】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
相关推荐
Ratten10 分钟前
【Python 实战】---- 实现一个可选择、配置操作的批量文件上传工具(四)配置管理界面和逻辑实现
python
Ratten13 分钟前
【Python 实战】---- 实现一个可选择、配置操作的批量文件上传工具(五)打包成 exe 应用
python
跟橙姐学代码18 分钟前
写 Python 函数别再死抠参数了,这招让代码瞬间灵活
前端·python
nightunderblackcat1 小时前
进阶向:人物关系三元组,解锁人物关系网络的钥匙
开发语言·python·开源·php
站大爷IP1 小时前
Pandas与NumPy:Python数据处理的双剑合璧
python
站大爷IP1 小时前
Python枚举进化论:IntEnum与StrEnum的实战指南
python
甄超锋2 小时前
python sqlite3模块
jvm·数据库·python·测试工具·django·sqlite·flask
R-G-B3 小时前
OpenCV Python——Numpy基本操作(Numpy 矩阵操作、Numpy 矩阵的检索与赋值、Numpy 操作ROI)
python·opencv·numpy·numpy基本操作·numpy 矩阵操作·numpy 矩阵的检索与赋值·numpy 操作roi
细节处有神明3 小时前
Jupyter 中实现交互式图表:ipywidgets 从入门到部署
ide·python·jupyter
小小码农一只3 小时前
Python 爬虫实战:玩转 Playwright 跨浏览器自动化(Chromium/Firefox/WebKit 全支持)
爬虫·python·自动化