文章目录

  • 前言
  • 过程
    • 程序分步(先爬取一页)
    • 程序一步到位(爬取10页)
  • 总结

前言

什么是AI?
The theory and development of computer systems able to perform tasks normally requiring human intelligence.(–Oxford Dictionary)
Using data to solve problems.(–cy)

过程

下图是车质网投诉页面:http://www.12365auto.com/zlts/0-0-0-0-0-0_0-0-0-0-0-0-0-1.shtml

首页的网址为:http://www.12365auto.com/zlts/0-0-0-0-0-0_0-0-0-0-0-0-0-1.shtml。

点击翻页后面有2、3、4…页,网址也分别为:
http://www.12365auto.com/zlts/0-0-0-0-0-0_0-0-0-0-0-0-0-2.shtml
http://www.12365auto.com/zlts/0-0-0-0-0-0_0-0-0-0-0-0-0-3.shtml
http://www.12365auto.com/zlts/0-0-0-0-0-0_0-0-0-0-0-0-0-4.shtml

程序分步(先爬取一页)

#先根据网址得到一个BeautifulSoup对象

request_url=http://www.12365auto.com/zlts/0-0-0-0-0-0_0-0-0-0-0-0-0-1.shtml
#先加一个headers
headers={'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.131 Safari/537.36'}
html=requests.get(request_url,headers=headers,timeout=10)
content=html.text#得到了一个str类型的内容
#通过content去创建一个BeautifulSoup对象
soup=BeautifulSoup(content,'html.parser',from_encoding='utf-8')
#有了soup这个BeautifulSoup对象,找到完整的投诉信息框
temp=soup.find('div',class_="tslb_b")#这里的div 和 tslb_b都是查看页面元素之后找到对应的东西,这个是我们要去候选的区域

#先准备好一个dataframe准备把解析到的数据给放到这个dataframe里面
import pandas as pd
##投诉编号 投诉品牌 投诉车系 投诉车型 问题简述 典型问题 投诉时间 投诉状态
df=pd.DataFrame(columns=['id','brand','car_modle','type','desc','problem','datatime','status'])
tr_list=temp.find_all('tr')#得到里面所有的tr就是汽车投诉那个表
for tr in tr_list:#再去获取里面的每一行  每一行的8个<td>就是要拿到的内容tempMy={}#第一个tr没有td 因为它就是网页中的列索引名称  从第二个tr开始 里面才td 存放的是表格里的内容td_list=tr.find_all('td')if len(td_list)>0:#如果有td 就去提取里面的内容tempMy['id'],tempMy['brand'],tempMy['car_modle'],tempMy['type'],tempMy['desc'],tempMy['problem'],tempMy['datatime'],tempMy['status']=td_list[0].text,td_list[1].text,td_list[2].text,td_list[3].text,td_list[4].text,td_list[5].text,td_list[6].text,td_list[7].textdf=df.append(tempMy,ignore_index=True)


程序运行之后就爬取到了本地:

程序一步到位(爬取10页)

#先导包
import requests
from bs4 import BeautifulSoup
#先准备好一个dataframe准备把解析到的数据给放到这个dataframe里面
import pandas as pd
##投诉编号 投诉品牌 投诉车系 投诉车型 问题简述 典型问题 投诉时间 投诉状态
result=pd.DataFrame(columns=['id','brand','car_modle','type','desc','problem','datatime','status'])
def get_info(request_url):"""一步到位"""## 1根据指定的网址url得到一个BeautifulSoup对象headers={'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.131 Safari/537.36'}#把request_url和headers放入requests.get()函数里面得到一个response对象html=requests.get(request_url,headers=headers,timeout=10)#再拿到这个responce对象的文字部分 strcontent=html.text#再把这个str喂入BeautifulSoup中得到一个bs对象soup=BeautifulSoup(content,'html.parser',from_encoding='utf-8')#把投诉框里面的内容给拿到了 下面这步是翻看了网页的源码确定的find()里面的内容temp=soup.find('div',class_='tslb_b')#temp里面所有的tr就是汽车投诉那个表tr_list=temp.find_all('tr')##投诉编号 投诉品牌 投诉车系 投诉车型 问题简述 典型问题 投诉时间 投诉状态df_info=pd.DataFrame(columns=['id','brand','car_modle','type','desc','problem','datatime','status'])for tr in tr_list:#再去获取里面的每一行  每一行的8个<td>就是要拿到的内容tempMy={}#先用个字典 准备存放每一个td里面的内容#第一个tr没有td 因为它就是网页中的列索引名称  从第二个tr开始 里面才td 存放的是表格里的内容td_list=tr.find_all('td')if len(td_list)>0:#如果有td 就去提取里面的内容tempMy['id'],tempMy['brand'],tempMy['car_modle'],tempMy['type'],tempMy['desc'],tempMy['problem'],tempMy['datatime'],tempMy['status']=td_list[0].text,td_list[1].text,td_list[2].text,td_list[3].text,td_list[4].text,td_list[5].text,td_list[6].text,td_list[7].text#添加到外面那个大的dataframe里面df_info=df_info.append(tempMy,ignore_index=True)return df_infofor i in range(1,11):result=result.append( get_info('http://www.12365auto.com/zlts/0-0-0-0-0-0_0-0-0-0-0-0-0-'+str(i)+'.shtml') )


然后把这个转成excle或者csv文件即可

result.to_csv("车质网汽车投诉.csv")

总结

爬虫需谨慎。(如果您发现我写的不对,欢迎在评论区批评指正)。

爬虫获取车质网的投诉信息相关推荐

  1. 手把手教你利用Python网络爬虫获取链家网的房产信息

    点击上方"Python爬虫与数据挖掘",进行关注 回复"书籍"即可获赠Python从入门到进阶共10本电子书 今 日 鸡 汤 夜阑卧听风吹雨,铁马冰河入梦来. ...

  2. python链家网爬虫_手把手教你利用Python网络爬虫获取链家网的房产信息

    点击上方" Python爬虫与数据挖掘 ",进行关注 回复"书籍"即可获赠Python从入门到进阶共10本电子书 今 日 鸡 汤 夜阑卧听风吹雨,铁马冰河入梦来 ...

  3. python爬虫爬取当当网的商品信息

    python爬虫爬取当当网的商品信息 一.环境搭建 二.简介 三.当当网网页分析 1.分析网页的url规律 2.解析网页html页面 书籍商品html页面解析 其他商品html页面解析 四.代码实现 ...

  4. Java爬虫 获取中国天气网7日天气预报

    Java爬虫 获取中国天气网7日天气预报 前言 工具准备 爬取数据 获取日期和星期 获取天气描述 获取温度范围 获取风向及风力 完整代码 引用 前言 项目需要获取7日天气预报,免费好用的接口寻觅不到, ...

  5. Python实现简单的爬虫获取某刀网的更新数据

    昨天晚上无聊时,想着练习一下Python所以写了一个小爬虫获取小刀娱乐网里的更新数据 #!/usr/bin/python # coding: utf-8import urllib.request im ...

  6. 编写python爬虫 获取中华英才网全网工资数据

    做数据分析 数据挖掘,第一步是获取数据,在这里,我们要分析现今全国各地各个职业的工资情况. 我们选择较为权威的'中华英才网',编写python爬虫获取该网站上的各个招聘信息说给出的工资,再取其行业工资 ...

  7. Python爬虫获取企查查公开的企业信息

    1.参考博文 https://blog.csdn.net/qq_39295735/article/details/84504848?utm_medium=distribute.pc_relevant. ...

  8. 【mysql数据库】通过python 3.7 爬虫获取企查查公开的企业信息,并记录到数据库

    1.爬虫的思路参考这篇博文 https://mp.csdn.net/postedit/83628587 2.数据库保存截图如下 3.python代码如下 #!/usr/bin/python3 #-*- ...

  9. python爬虫获取中国天气网天气数据 requests BeautifulSoup re

    python获取中国天气网天气数据:http://www.weather.com.cn/textFC/henan.shtml main.py # -*- coding: utf-8 -*- impor ...

最新文章

  1. pytorch系列 -- 9 pytorch nn.init 中实现的初始化函数 uniform, normal, const, Xavier, He initialization...
  2. 设计模式之C#实现--FactoryMethod
  3. Thrift在windows下的使用
  4. javaee校园信息服务器,基于javaEE服务器 学生考勤管理系统的设计与实现开题报告...
  5. springboot配置Filter的两种方法
  6. Event-based Vision: A Survey——论文阅读笔记
  7. 深度学习(三十一)——Style Transfer
  8. 第二十九期:全球首部AI交响变奏曲问世,AI技术应用再拓边界
  9. 听说你盗图都盗绿了?
  10. asp.net数据绑定之Eval和Bind 和等区别
  11. 如何遍历或枚举JavaScript对象?
  12. [C++] 前置++与后置++
  13. ZooKeeper Web UI -- Shovel
  14. scrapy实例三 【豆瓣电影Top250】
  15. 【LeetCode】【字符串】题号:*151. 翻转字符串里的单词
  16. 为什么倡导企业使用电子招投标?
  17. PS教程新手入门(一)--去除图片上文字的方法(6种)
  18. 计算机键盘怎么输入平方,word里平方2怎么打_在word里输入㎡符号的方法
  19. VMware 无法将值写入注册表项
  20. pyqt5使用pyinstaller打包项目为exe

热门文章

  1. C#从基于FTPS的FTP server下载数据 (FtpWebRequest 的使用)SSL 加密
  2. 人工智能识别图片食物
  3. 猎人与猎狗的故事——关于团队激励
  4. UML图绘制(四)-----部署图的画法
  5. UML于模式应用 摘抄(1)
  6. 盈利模式不清晰 本身是个伪需求 共享充电宝不过是场资本游戏
  7. AI跨界,RPA进阶,数字员工会是企业转型的最优解吗?
  8. 游戏策划入门(4)——为你的游戏建立起一个完整的主框架
  9. 使用ntpd配置集群时间同步
  10. 软通动力--OPPO0509-android开发工程师