当前位置:   article > 正文

python爬虫——爬取汽车之家新闻_爬取汽车之家的评论

爬取汽车之家的评论

汽车之家网址:https://www.autohome.com.cn/news/
使用的模块:requests 、BeautifulSoup
这里写图片描述
这就是我们要爬取的信息
这里写图片描述

按F12审查一下元素:找到了对应的信息。而且发现要爬取的图片都在id=auto-channel-lazyload-article的div标签下的li标签里。
这里写图片描述
li标签下的a标签就是新闻的url;image标签,src就是获取图片的url;
请求图片地址,将获取到的内容写成二进制文件,保存下来。
这就是完整的思路,接下来看一下代码:

完整代码:

import requests
from bs4 import BeautifulSoup

url='https://www.autohome.com.cn/news/'
response=requests.get(url)
response.encoding=response.apparent_encoding

soup=BeautifulSoup(response.text,'html.parser')

target = soup.find(id='auto-channel-lazyload-article')
li_list=target.find_all('li')

for i in li_list:
    a=i.find('a')
    if a:
        print(a.attrs.get('href'))
        txt=a.find('h3').text
        print(txt)
        img = a.find('img').attrs.get('src')
        print(img)



        img_response=requests.get(url='http:'+img)

        import uuid#用来生成唯一识别码的。具有多种算法
        file_name=str(uuid.uuid4())+'.jpg' 
        with open(file_name,'wb')as f:
            f.write(img_response.content)

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31

这里用到了uuid模块,是用来生成唯一识别码的。具有多种算法。

UUID 是 通用唯一识别码(Universally Unique Identifier)的缩写,是一种软件建构的标准,亦为开放软件基金会组织在分布式计算环境领域的一部分。其目的,是让分布式系统中的所有元素,都能有唯一的辨识信息,而不需要通过中央控制端来做辨识信息的指定。如此一来,每个人都可以创建不与其它人冲突的UUID。在这样的情况下,就不需考虑数据库创建时的名称重复问题。目前最广泛应用的UUID,是微软公司的全局唯一标识符(GUID),而其他重要的应用,则有Linux ext2/ext3文件系统、LUKS加密分区、GNOME、KDE、Mac OS X等等。另外我们也可以在e2fsprogs包中的UUID库找到实现。
python中的uuid模块
uuid模块在Python 2.5以后引入,接口包括:不可变对象UUID(UUID类)和函数uuid1()、uuid3()、uuid4()和uuid5(),后面的四个函数用于生成 RFC 4122 规范中指定的第1、3、4、5版UUID。使用uuid1()或uuid4()可以获得一个唯一的ID,uuid1()包含了主机的网络名称,uuid4()不涉及网络主机名,仅生成一个随机UUID,因此从隐私保护角度uuid4()更加安全。
此文代码中使用的就是uuid4()。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家小花儿/article/detail/659771
推荐阅读
相关标签
  

闽ICP备14008679号