汽车之家各种车型参数爬虫

2023-10-27

汽车之家各种车型参数爬虫

结果如下:

本案例使用jupyter notebook,用到requests,BeautifulSoup,lxml,urlencode ,pandas五个库,爬取下来的数据如下图所示:
在这里插入图片描述
在这里插入图片描述

详细过程:

整个过程分成三个部分:
1,爬取汽车之家各个品牌(譬如奥迪)汽车对应的链接
2,爬取每一个品牌下各个汽车系列(譬如奥迪A3)的链接
3,使用2得到的链接爬取每个汽车系列的参数(譬如奥迪A3的发动机,价格,变速箱,颜色,用户评分等等)

先引入所需要的库,其中最后一个库的作用是将我们后面要用到的parms参数转化为字符串形式,代码如下:

import requests#request包
from bs4 import BeautifulSoup
import pandas as pd#pandas库用来储存结果
import lxml
from urllib.parse import urlencode 
1,爬取汽车之家各个品牌(譬如奥迪)汽车对应的链接。

如图所示,我们要的是这一部分内容,那这一部分的内容怎么得到呢?
在这里插入图片描述
右键——检查——network——然后刷新浏览器,服务器会返回很多个包,下图所示的这个包即为我们想用的
在这里插入图片描述
它的页面如下图所示,然后我们直接复制它的链接即可进行爬取,链接如下: https://car.autohome.com.cn/AsLeftMenu/As_LeftListNew.ashx?typeId=1%20&brandId=0%20&fctId=0%20&seriesId=0.
在这里插入图片描述
编写爬虫方法:

def getLongPage():
    url = 'https://car.autohome.com.cn/AsLeftMenu/As_LeftListNew.ashx?typeId=1%20&brandId=0%20&fctId=0%20&seriesId=0'
    headers = {
   
        'Referer': 'https://car.autohome.com.cn/',
        'Sec-Fetch-Mode': 'no-cors',
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.90 Safari/537.36'
    }
    try:
        r = requests.get(url ,headers = headers)
        if r.status_code == 200:
            r.encoding = r.apparent_encoding#此处将编码改成网页的编码样式,防止出现乱码
            soup = BeautifulSoup(r.text, "lxml")
            return soup
    except:
        print("爬取失败!"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

汽车之家各种车型参数爬虫 的相关文章

  • 熊猫按 n 最大总和分组

    我正在尝试使用groupby nlargest and sum在 Pandas 中一起运行 但在运行时遇到困难 State County Population Alabama a 100 Alabama b 50 Alabama c 40
  • Flask-SocketIO redis 订阅

    我在用着https github com miguelgrinberg Flask SocketIO https github com miguelgrinberg Flask SocketIO实现 WebSocket 服务器 我需要从另一
  • App Engine 上的 Django 与 webapp2 [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • DynamodB:如何更新排序键?

    该表有两个键 filename 分区键 和eventTime 排序键 我要更新eventTime对于某些filename Tried put item and update item 发送相同的filename与新的eventTime但这些
  • Scrapy 文件管道不下载文件

    我的任务是构建一个可以下载所有内容的网络爬虫 pdfs 在给定站点中 Spider 在本地计算机和抓取集线器上运行 由于某种原因 当我运行它时 它只下载一些但不是全部的 pdf 通过查看输出中的项目可以看出这一点JSON 我已经设定MEDI
  • 将整数系列转换为交替(双元)二进制系列

    我不知道如何最好地表达这个问题 因为在这里谷歌搜索和搜索总是让我找到更复杂的东西 我很确定这是基本的东西 但对于我的生活来说 我找不到一个好的方法来做到这一点下列 给定一个整数序列 比如说 for x in range 0 36 我想将这些
  • 如何找到多个 pandas 数据框中一对列与任意顺序对的交集?

    我有多个 pandas 数据框 为了简单起见 假设我有三个 gt gt df1 col1 col2 id1 A B id2 C D id3 B A id4 E F gt gt df2 col1 col2 id1 B A id2 D C id
  • 在 Python 中从 Excel 复制 YEARFRAC() 函数

    因此 我使用 python 来自动执行一些必须在 Excel 中执行的重复任务 我需要做的计算之一需要使用yearfrac 这在Python中被复制了吗 I found this https lists oasis open org arc
  • 如何知道python运行脚本的路径?

    sys arg 0 给我 python 脚本 例如 python hello py 返回 sys arg 0 的 hello py 但我需要知道 hello py 位于完整路径中的位置 我怎样才能用Python做到这一点 os path a
  • 列表推导式和 for 循环中的 Lambda 表达式[重复]

    这个问题在这里已经有答案了 我想要一个 lambda 列表 作为一些繁重计算的缓存 并注意到这一点 gt gt gt j for j in lambda i for i in range 10 9 9 9 9 9 9 9 9 9 9 Alt
  • Python在没有pandas的情况下解码excel表

    我正在尝试在 python 中读取 excel 文件而不使用pandas or xlrd 我一直在尝试将结果转换为bytes to utf 8没有任何成功 xls 文件中的数据 colA colB colC spc 1D0 20190705
  • Flymake的临时文件可以在系统临时目录下创建吗?

    我目前正在使用以下代码在 emacs 中连接 Flymake 和 Pyflakes defun flymake create temp in system tempdir filename prefix make temp file or
  • pandas groupby 操作缺少数据

    在 pandas 数据框中 我有一列如下所示 0 M 1 E 2 L 3 M 1 4 M 2 5 M 3 6 E 1 7 E 2 8 E 3 9 E 4 10 L 1 11 L 2 12 M 1 a 13 M 1 b 14 M 1 c 15
  • 如何通过selenium中弹出的身份验证?

    我正在尝试使用带有 Selenium 的 Python 脚本加载需要身份验证的网页 options webdriver ChromeOptions prefs download default directory r download de
  • 类返回语句不打印任何输出

    我正在学习课程 但遇到了问题return语句 它是语句吗 我希望如此 程序什么也没有打印出来 它只是结束而不做任何事情 class className def createName self name self name name def
  • 从给定的项目列表创建子列表

    我首先要说的是以下问题不是为了家庭作业目的即使因为我几个月前就完成了软件工程师的工作 无论如何 今天我正在工作 一位朋友向我询问了这个奇怪的排序问题 我有一个包含 1000 行的列表 每行代表一个数字 我想创建 10 个子列表 每个子列表都
  • AWS 将 MQTT 消息存储到 DynamoDB

    我构建了一个定期发送 MQTT 消息的 python 脚本 这是发送到后端的 JSON 字符串 Id 1234 Ut 1488395951 Temp 22 86 Rh 48 24 在后端 我想将 MQTT 消息存储到 DynamoDB 表中
  • Chrome 驱动程序和 Chromium 二进制文件无法在 aws lambda 上运行

    我陷入了一个问题 我需要在 AWS lambda 上做一些抓取工作 所以我按照下面提到的博客及其代码库作为起点 这非常有帮助 并且在运行时环境 Python 3 6 的 AWS lambda 上对我来说工作得很好 https manivan
  • PyObjC + Python 3.0 问题

    默认情况下 Cocoa Python 应用程序使用默认的 Python 运行时版本 2 5 如何配置我的 Xcode 项目以便它使用较新的 Python 3 0 运行时 我尝试用新版本替换项目中包含的Python framework 但它不
  • 超过两个点的Python相对导入

    是否可以使用路径中包含两个以上点的模块引用 就像这个例子一样 Project structure sound init py codecs init py echo init py nix init py way1 py way2 py w

随机推荐

  • FastSpeech2论文中文翻译

    FastSpeech2 论文的翻译 翻译的挺差的 大概是那意思 只翻译了摘要 模型部分和实验部分 摘要 高级的TTS模型像fastspeech 能够显著更快地合成语音相较于之前的自回归模型 而且质量相当 FastSpeech模型的训练依赖于
  • Linux下libxml库编程(-)

    http leansmall blog 163 com blog static 51617691200811171530183 1 编写说明 本文档主要介绍XML的基本知识及如何利用libxml来操作xml文件 2 XML基础 XML是eX
  • Telegram死循环(已解决)

    简介 Telegram 中文叫做电报 作为一款安全的 轻量级的即时通讯软件 是我们在进行国际通信 与外国友人或者身处外地的游子的一种通讯选择 但是这个软件有一个 BUG 就是如果我们之前已经在一台设备上登陆过自己的账号 那么如果再次登录的时
  • 23.8.16.git clone -b branchName http://xx.xx.x.x.xx.git解析

    git clone 表示使用git克隆远程仓库代码 b 这是branch的简写 代表分支的意思 branchName 代表远程仓库的分支名 也就是要克隆的指定分支名 http xx xx x x xx git 这是远程仓库的url地址
  • Vue3 -- 自定义指令directive

    目录 自定义指令directive 局部自定义指令 全局自定义指令 自定义指令动态参数 函数简写 传参给自定义指令 总结 自定义指令directive 在Vue中除了像v model 和 v show这样的默认内置的指令外 Vue 也允许注
  • go语言实战-----27-----mysql增删改查、预处理、事务、第三方库sqlx

    一 mysql增删改查 Mysql准备工作 首先我们建库建表 以方便进行测试 运行下面sql文件 CREATE DATABASE IF NOT EXISTS go test use go test CREATE TABLE user id
  • 2022年广东省中职组“网络空间安全”赛题及赛题解析(超详细)

    2022年广东省中职组 网络空间安全 赛项模块B解析 2022年中职组广东省区竞赛任务书 模块 B 基础设施设置与安全加固 1000分 B 1 Apache安全配置 B 2 隐写术应用 B 3 Python程序渗透 B 4 代码渗透测试 B
  • Pandas 之 过滤DateFrame中所有小于0的值并替换

    Outline 前几天 数据清洗时有用到pandas去过滤大量数据中的 负值 把过滤出来的 负值 替换为 NaN 或者指定的值 故做个小记录 读取CSV文件 代码 import pandas as pd import numpy as np
  • 万能指针:void * 指针

    背景 最近看到void 类型的指针不知道该怎么处理 特别学习一下 适用语言 C C 当中都可以使用 但就目前认知水平 C当中用的较为普遍一些 void 指针的机制 指针从某种程度上来说 无非就是一个地址 它的类型只是用于说明数据结构的 指针
  • RISC-V指令集是一种精简的、可编程的指令集,它主要用于实现各种复杂的数据处理与控制任务。它提供了一系列简单的、可编程的指令,可以用来实现复杂的操作,比如addi指令,它可以将一个常数(如0x1)加...

    RISC V指令集是一种精简可编程的指令集 可以用来实现复杂的数据处理和控制操作 它提供了一系列简单可编程的指令 例如addi指令 它可以将一个常数加到寄存器中 并将结果存储到另一个寄存器中 从而实现特定的操作
  • 小白学Linux之#pragma的用法

    预编译指令 pragma的用法 最近在看开源项目中的代码时 发现许多地方都用到了 pragma的程序 因此 就问了下谷歌老师 总结了下 pragma预编译指令的常用用法 现在和大家分享下 一 pragma最常用的方法 1 progma pa
  • 【Node】package.json文件

    package json 文件详解前言一 package json 文件作用二 package json 文件创建三 package json 文件示例四 package json 文件配置说明 五 项目依赖 六 开发依赖 七 Node j
  • 【Linux】工具(5)——gdb

    今天我们来到Linux工具的最后一篇博客 gdb的使用 目录 一 Linux下的release和debug 二 gdb常用指令选项 一 Linux下的release和debug 我们先来写一个Makfile 来方便我们编译代码 再来写一个t
  • C# 中的多线程和异步编程

    目录 前言 1 并发 并行 异步 同步 的概念 区别以及使用场景 1 并发和并行 2 同步和异步 3 何时使用多线程编程 何时使用异步编程 2 基础知识 1 简介及概念 1 1Join 和 Sleep 1 2线程是如何工作的 1 3线程 v
  • MySql事务和存储引擎

    目录 一 MySQL 事物 1 事务的概念 2 事务的ACID特点 2 1 1 原子性 2 1 2 一致性 2 1 3 隔离性 2 1 4 Mysql 及事物隔离级别 查询全局事务隔离级别 查询会话事务隔离级别 设置全局事务隔离级别 设置会
  • DRF---序列化组件

    目录 序列化器Serializer 序列化组件基本使用 使用序列化类 序列化多条数据 使用序列化类 序列化单条数据 反序列化 新增 修改 新增 视图类 序列化类 视图类 序列化类 序列化类的常见字段类和常见参数 常用字段类型 选项参数 通用
  • 【Linux线程同步】生产者消费者模型

    文章目录 1 peach 线程互斥中可能还会存在的问题 peach 2 peach 线程同步 peach 2 1 apple 同步概念与竞态条件 apple 2 2 apple 条件变量函数 apple lemon 初始化 lemon le
  • Qt5.15源码编译详解

    1 请先参考 https blog csdn net weixin 60395515 article details 127284046 spm 1001 2014 3001 5501 2 有以下几个不同的地方需要修改 Qt5的mkspec
  • 超详细解决困扰人的python典例:“有n个人围成一圈”式n里挑一

    自学python No 2 引语 题目 案例实现 range 函数 append 函数 pop 函数 完整代码 引语 记录学习路程 抛砖引玉 如有更好的算法或者出现错误 欢迎指点 题目 有n个人围成一圈 顺序排号 从第一个人开始报数 从1到
  • 汽车之家各种车型参数爬虫

    汽车之家各种车型参数爬虫 结果如下 本案例使用jupyter notebook 用到requests BeautifulSoup lxml urlencode pandas五个库 爬取下来的数据如下图所示 详细过程 整个过程分成三个部分 1