爬取汽车之家新闻

a.首先伪造浏览器向某个地址发送HTTP请求,获取返回的字符串

import requestsresponse=requests.get(url=‘地址‘)#get请求
response.content  #内容
response.encoding=apparent_encoding  #检测编码形式,并设置编码
response.text  #自动转码

b.通过Beautifulsoup4解析HTML格式字符串

from bs4 import BeautifulSoup

soup = BeautifulSoup(‘<html>...</html>‘, ‘html.parser‘)#解析嵌套,html.parser解析器,lxml等
div = soup.find(name=‘标签名‘, id=‘li‘)
div = soup.find(name=‘标签名‘, _class=‘li‘)
div = soup.find(name=‘标签名‘, attrs={‘id‘ = ‘li‘, ‘class‘:‘id‘})

div.text
div.attrs
div.get(‘href‘)

divs = soup.find_all(name=‘标签名‘, id=‘li‘)
divs = soup.find_all(name=‘标签名‘, _class=‘li‘)
divs = soup.find_all(name=‘标签名‘, attrs={‘id‘ = ‘li‘, ‘class‘:‘id‘})
#find找到匹配成功的第一个
#find_all全部匹配,divs为列表
import requests
from bs4 import BeautifulSoup

#下载页面
ret=requests.get(
    url=‘https://www.autohome.com.cn/news/‘
)

# print(ret.apparent_encoding) #检测编码形式
# print(ret.content) #内容

ret.encoding=ret.apparent_encoding #设置编码
# print(ret.text)    #自动转码

#解析,获取想要的内容 beautifulsoup4
soup=BeautifulSoup(ret.text,‘html.parser‘) #解析嵌套,html.parser解析器,lxml

#find找到匹配成功的第一个
#find_all全部匹配
div=soup.find(name=‘div‘,id=‘auto-channel-lazyload-article‘)
li_list=div.find_all(name=‘li‘)

for li in li_list:
    #标题
    h3=li.find(name=‘h3‘)
    if not h3:
        continue
    # print(h3.text)#h3.text取文本
    #简介
    p=li.find(name=‘p‘)
    # print(p.text)
    #地址
    a=li.find(name=‘a‘)
    # print(a.attrs)#获取属性
    # print(a.get(‘href‘))
    print(h3.text,a.get(‘href‘))
    print(p.text)
    print(‘=‘*15)
    #图片
    img=li.find(name=‘img‘)
    src=img.get(‘src‘)

    file_name=src.rsplit(‘__‘,maxsplit=1)[1]
    ret_img=requests.get(
        url=‘https:‘+src
    )
    with open(file_name,‘wb‘) as f:
        f.write(ret_img.content)

原文地址:https://www.cnblogs.com/q1ang/p/9250057.html

时间: 2024-09-29 18:49:01

爬取汽车之家新闻的相关文章

py 爬取汽车之家新闻案例

``` import requests from bs4 import BeautifulSoup response = requests.get("https://www.autohome.com.cn/news/") # 1. content /text 的区别 # print(response.content) # content 拿到的字节 response.encoding = 'gbk' # print(response.text) # text 拿到的文本信息 soup

python3 爬取汽车之家所有车型操作步骤

题记: 互联网上关于使用python3去爬取汽车之家的汽车数据(主要是汽车基本参数,配置参数,颜色参数,内饰参数)的教程已经非常多了,但大体的方案分两种: 1.解析出汽车之家某个车型的网页,然后正则表达式匹配出混淆后的数据对象与混淆后的js,并对混淆后的js使用pyv8进行解析返回正常字符,然后通过字符与数据对象进行匹配,具体方法见这位园友,传送门:https://www.cnblogs.com/my8100/p/js_qichezhijia.html (感谢这位大神前半部分的思路) 2.解析出

爬取汽车之家

import requests from bs4 import BeautifulSoup response = requests.get('https://www.autohome.com.cn/news/') response.encoding = 'gbk' soup = BeautifulSoup(response.text,"html.parser") div =soup.find(name='div',id='auto-channel-lazyload-article')

爬取汽车之家新闻图片的python爬虫代码

import requestsfrom bs4 import BeautifulSouprespone=requests.get('https://www.autohome.com.cn/news/')respone.encoding='gbk'# print(respone.text) soup=BeautifulSoup(respone.text,'html.parser')div=soup.find(name='div',attrs={'id':'auto-channel-lazyload

(原)爬取辽宁科技大学相关新闻---python爬虫入门

有人说大部分python程序员都是通过爬虫入门的或者都是由爬虫喜欢上python的.还有大部分人学爬虫都喜欢拿自己学校的网站练手.我就是基于以上两点开始的... ok,开始,首先你需要一点python基础,一点点基础就可以,找一本薄薄的书过一遍,可以上这来找找 http://wiki.woodpecker.org.cn/moin/PyBooks 看书不爽,那你上这来看看,几道简简单单的题做过之后,顿觉一览众山小 http://www.pythontutor.com/ 咱们不是一边学爬虫,一边学p

Python3从零开始爬取今日头条的新闻【一、开发环境搭建】

Python3从零开始爬取今日头条的新闻[一.开发环境搭建] Python3从零开始爬取今日头条的新闻[二.首页热点新闻抓取] Python3从零开始爬取今日头条的新闻[三.滚动到底自动加载] Python3从零开始爬取今日头条的新闻[四.模拟点击切换tab标签获取内容] Python3从零开始爬取今日头条的新闻[五.解析头条视频真实播放地址并自动下载] 所谓爬虫,就是通过编程的方式自动从网络上获取自己所需的资源,比如文章.图片.音乐.视频等多媒体资源.通过一定的方式获取到html的内容,再通过

爬取IT之家业界新闻

爬取站点  https://it.ithome.com/ityejie/ ,进入详情页提取内容. 1 import requests 2 import json 3 from lxml import etree 4 from pymongo import MongoClient 5 6 url = 'https://it.ithome.com/ithome/getajaxdata.aspx' 7 headers = { 8 'authority': 'it.ithome.com', 9 'met

scrapy爬虫之爬取汽车信息

scrapy爬虫还是很简单的,主要是三部分:spider,item,pipeline 其中后面两个也是通用套路,需要详细解析的也就是spider. 具体如下: 在网上找了几个汽车网站,后来敲定,以易车网作为爬取站点 原因在于,其数据源实在是太方便了. 看这个页面,左边按照品牌排序,搜索子品牌,再挨个查看信息即可 按照通常的思路,是需要手动解析左边这列表 找出每个品牌的链接页面 结果分析源码发现,网站直接通过js生成的导航栏,直接通过这个链接生成的json即可获得所有的信息 http://api.

爬取学校官网新闻-bs与xpath的恩怨情仇

为了更好地学习<自然语言处理>这一门课,我们的老师叫我们组团去刷学校官网,我刚开始还以为很简单,事实证明,我错了,固执的凭借xpath去解析内容非常的难,还有我最后用bs4轻松解析,这个项目让我看清了xpath适合提取单个标签内的内容,而bs4明显适合去提取大段的内容,然后再通过join,strip,replace,split等内容就可以去掉转义字符,空格和转换为列表. 另外,老师也要求我们使用正则表达式,我用正则表达式去提取特定格式的时间还有在提取出来的文本内容中提取出最后一个括号内的内容,