走好这六步,python爬虫爬取网页数据手到擒来~

这篇具有很好参考价值的文章主要介绍了走好这六步,python爬虫爬取网页数据手到擒来~。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言:

用python的爬虫爬取数据真的很简单,只要掌握这六步就好,也不复杂。以前还以为爬虫很难,结果一上手,从初学到把东西爬下来,一个小时都不到就解决了。

python爬虫六步走

第一步:安装requests库和BeautifulSoup库:

在程序中两个库的书写是这样的:

import` `requests``from` `bs4 ``import` `BeautifulSoup

由于我使用的是pycharm进行的python编程。所以我就讲讲在pycharm上安装这两个库的方法。在主页面文件选项下,找到设置。进一步找到项目解释器。之后在所选框中,点击软件包上的+号就可以进行查询插件安装了。有过编译器插件安装的hxd估计会比较好入手。具体情况就如下图所示。

python爬取网页数据库,python,python,爬虫,python爬虫爬取网页数据,python入门,python爬虫

python爬取网页数据库,python,python,爬虫,python爬虫爬取网页数据,python入门,python爬虫

第二步:获取爬虫所需的header和cookie:

我写了一个爬取微博热搜的爬虫程序,这里就直接以它为例吧。获取header和cookie是一个爬虫程序必须的,它直接决定了爬虫程序能不能准确的找到网页位置进行爬取。

首先进入微博热搜的页面,按下F12,就会出现网页的js语言设计部分。如下图所示。找到网页上的Network部分。然后按下ctrl+R刷新页面。如果,进行就有文件信息,就不用刷新了,当然刷新了也没啥问题。然后,我们浏览Name这部分,找到我们想要爬取的文件,鼠标右键,选择copy,复制下网页的URL。就如下图所示。

python爬取网页数据库,python,python,爬虫,python爬虫爬取网页数据,python入门,python爬虫

复制好URL后,我们就进入一个网页Convert curl commands to code。这个网页可以根据你复制的URL,自动生成header和cookie,如下图。生成的header和cookie,直接复制走就行,粘贴到程序中。

python爬取网页数据库,python,python,爬虫,python爬虫爬取网页数据,python入门,python爬虫

#爬虫头数据``cookies ``=` `{``  ``'SINAGLOBAL'``: ``'6797875236621.702.1603159218040'``,``  ``'SUB'``: ``'_2AkMXbqMSf8NxqwJRmfkTzmnhboh1ygvEieKhMlLJJRMxHRl-yT9jqmg8tRB6PO6N_Rc_2FhPeZF2iThYO9DfkLUGpv4V'``,``  ``'SUBP'``: ``'0033WrSXqPxfM72-Ws9jqgMF55529P9D9Wh-nU-QNDs1Fu27p6nmwwiJ'``,``  ``'_s_tentry'``: ``'www.baidu.com'``,``  ``'UOR'``: ``'www.hfut.edu.cn,widget.weibo.com,www.baidu.com'``,``  ``'Apache'``: ``'7782025452543.054.1635925669528'``,``  ``'ULV'``: ``'1635925669554:15:1:1:7782025452543.054.1635925669528:1627316870256'``,``}``headers ``=` `{``  ``'Connection'``: ``'keep-alive'``,``  ``'Cache-Control'``: ``'max-age=0'``,``  ``'Upgrade-Insecure-Requests'``: ``'1'``,``  ``'User-Agent'``: ``'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Safari/537.36 SLBrowser/7.0.0.6241 SLBChan/25'``,``  ``'Accept'``: ``'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9'``,``  ``'Sec-Fetch-Site'``: ``'cross-site'``,``  ``'Sec-Fetch-Mode'``: ``'navigate'``,``  ``'Sec-Fetch-User'``: ``'?1'``,``  ``'Sec-Fetch-Dest'``: ``'document'``,``  ``'Accept-Language'``: ``'zh-CN,zh;q=0.9'``,``}``params ``=` `(``  ``(``'cate'``, ``'realtimehot'``),``)

复制到程序中就像这样。这是微博热搜的请求头。

第三步:获取网页:

我们将header和cookie搞到手后,就可以将它复制到我们的程序里。之后,使用request请求,就可以获取到网页了。

#获取网页``response ``=` `requests.get(``'https://s.weibo.com/top/summary'``, headers``=``headers, params``=``params, cookies``=``cookies)

第四步:解析网页:

这个时候,我们需要回到网页。同样按下F12,找到网页的Elements部分。用左上角的小框带箭头的标志,如下图,点击网页内容,这个时候网页就会自动在右边显示出你获取网页部分对应的代码。

python爬取网页数据库,python,python,爬虫,python爬虫爬取网页数据,python入门,python爬虫

python爬取网页数据库,python,python,爬虫,python爬虫爬取网页数据,python入门,python爬虫

如上图所示,我们在找到想要爬取的页面部分的网页代码后,将鼠标放置于代码上,右键,copy到selector部分。就如上图所示。

第五步:分析得到的信息,简化地址:

其实刚才复制的selector就相当于网页上对应部分存放的地址。由于我们需要的是网页上的一类信息,所以我们需要对获取的地址进行分析,提取。当然,就用那个地址也不是不行,就是只能获取到你选择的网页上的那部分内容。

#pl_top_realtimehot > table > tbody > tr:nth-child(1) > td.td-02 > a``#pl_top_realtimehot > table > tbody > tr:nth-child(2) > td.td-02 > a``#pl_top_realtimehot > table > tbody > tr:nth-child(9) > td.td-02 > a

这是我获取的三条地址,可以发现三个地址有很多相同的地方,唯一不同的地方就是tr部分。由于tr是网页标签,后面的部分就是其补充的部分,也就是子类选择器。可以推断出,该类信息,就是存储在tr的子类中,我们直接对tr进行信息提取,就可以获取到该部分对应的所有信息。所以提炼后的地址为:

#pl_top_realtimehot > table > tbody > tr > td.td-02 > a

这个过程对js类语言有一定了解的hxd估计会更好处理。不过没有js类语言基础也没关系,主要步骤就是,保留相同的部分就行,慢慢的试,总会对的。

第六步:爬取内容,清洗数据

这一步完成后,我们就可以直接爬取数据了。用一个标签存储上面提炼出的像地址一样的东西。标签就会拉取到我们想获得的网页内容。

#爬取内容``content``=``"#pl_top_realtimehot > table > tbody > tr > td.td-02 > a"

之后我们就要soup和text过滤掉不必要的信息,比如js类语言,排除这类语言对于信息受众阅读的干扰。这样我们就成功的将信息,爬取下来了。

fo ``=` `open``(``"./微博热搜.txt"``,``'a'``,encoding``=``"utf-8"``)``a``=``soup.select(content)``for` `i ``in` `range``(``0``,``len``(a)):``  ``a[i] ``=` `a[i].text``  ``fo.write(a[i]``+``'\n'``)``fo.close()

我是将数据存储到了文件夹中,所以会有wirte带来的写的操作。想把数据保存在哪里,或者想怎么用,就看读者自己了。

爬取微博热搜的代码实例以及结果展示:

import` `os``import` `requests``from` `bs4 ``import` `BeautifulSoup``#爬虫头数据``cookies ``=` `{``  ``'SINAGLOBAL'``: ``'6797875236621.702.1603159218040'``,``  ``'SUB'``: ``'_2AkMXbqMSf8NxqwJRmfkTzmnhboh1ygvEieKhMlLJJRMxHRl-yT9jqmg8tRB6PO6N_Rc_2FhPeZF2iThYO9DfkLUGpv4V'``,``  ``'SUBP'``: ``'0033WrSXqPxfM72-Ws9jqgMF55529P9D9Wh-nU-QNDs1Fu27p6nmwwiJ'``,``  ``'_s_tentry'``: ``'www.baidu.com'``,``  ``'UOR'``: ``'www.hfut.edu.cn,widget.weibo.com,www.baidu.com'``,``  ``'Apache'``: ``'7782025452543.054.1635925669528'``,``  ``'ULV'``: ``'1635925669554:15:1:1:7782025452543.054.1635925669528:1627316870256'``,``}``headers ``=` `{``  ``'Connection'``: ``'keep-alive'``,``  ``'Cache-Control'``: ``'max-age=0'``,``  ``'Upgrade-Insecure-Requests'``: ``'1'``,``  ``'User-Agent'``: ``'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Safari/537.36 SLBrowser/7.0.0.6241 SLBChan/25'``,``  ``'Accept'``: ``'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9'``,``  ``'Sec-Fetch-Site'``: ``'cross-site'``,``  ``'Sec-Fetch-Mode'``: ``'navigate'``,``  ``'Sec-Fetch-User'``: ``'?1'``,``  ``'Sec-Fetch-Dest'``: ``'document'``,``  ``'Accept-Language'``: ``'zh-CN,zh;q=0.9'``,``}``params ``=` `(``  ``(``'cate'``, ``'realtimehot'``),``)``#数据存储``fo ``=` `open``(``"./微博热搜.txt"``,``'a'``,encoding``=``"utf-8"``)``#获取网页``response ``=` `requests.get(``'https://s.weibo.com/top/summary'``, headers``=``headers, params``=``params, cookies``=``cookies)``#解析网页``response.encoding``=``'utf-8'``soup ``=` `BeautifulSoup(response.text, ``'html.parser'``)``#爬取内容``content``=``"#pl_top_realtimehot > table > tbody > tr > td.td-02 > a"``#清洗数据``a``=``soup.select(content)``for` `i ``in` `range``(``0``,``len``(a)):``  ``a[i] ``=` `a[i].text``  ``fo.write(a[i]``+``'\n'``)``fo.close()

python爬取网页数据库,python,python,爬虫,python爬虫爬取网页数据,python入门,python爬虫

总结

到此这篇关于如何用六步教会你使用python爬虫爬取数据的文章就介绍到这了,更多相关python爬虫爬取数据内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

读者福利:知道你对Python感兴趣,便准备了这套python学习资料

对于0基础小白入门:

如果你是零基础小白,想快速入门Python是可以考虑的。
一方面是学习时间相对较短,学习内容更全面更集中。
二方面是可以找到适合自己的学习方案

包括:Python激活码+安装包、Python web开发,Python爬虫,Python数据分析,人工智能、机器学习等习教程。带你从零基础系统性的学好Python!

零基础Python学习资源介绍

python爬取网页数据库,python,python,爬虫,python爬虫爬取网页数据,python入门,python爬虫

👉Python学习路线汇总👈

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。(全套教程文末领取哈)
python爬取网页数据库,python,python,爬虫,python爬虫爬取网页数据,python入门,python爬虫

👉Python必备开发工具👈

python爬取网页数据库,python,python,爬虫,python爬虫爬取网页数据,python入门,python爬虫

温馨提示:篇幅有限,已打包文件夹,获取方式在文末

👉Python学习视频600合集👈

观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
python爬取网页数据库,python,python,爬虫,python爬虫爬取网页数据,python入门,python爬虫

👉实战案例👈

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
python爬取网页数据库,python,python,爬虫,python爬虫爬取网页数据,python入门,python爬虫

👉100道Python练习题👈

检查学习结果。
python爬取网页数据库,python,python,爬虫,python爬虫爬取网页数据,python入门,python爬虫

👉面试刷题👈

python爬取网页数据库,python,python,爬虫,python爬虫爬取网页数据,python入门,python爬虫

python爬取网页数据库,python,python,爬虫,python爬虫爬取网页数据,python入门,python爬虫

👉python副业兼职与全职路线👈

python爬取网页数据库,python,python,爬虫,python爬虫爬取网页数据,python入门,python爬虫

上述这份完整版的Python全套学习资料已经上传CSDN官方,朋友们如果需要可以微信扫描下方CSDN官方认证二维码 即可领取↓↓↓
python爬取网页数据库,python,python,爬虫,python爬虫爬取网页数据,python入门,python爬虫文章来源地址https://www.toymoban.com/news/detail-592069.html

到了这里,关于走好这六步,python爬虫爬取网页数据手到擒来~的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Python网络爬虫逆向分析爬取动态网页、使用Selenium库爬取动态网页、​编辑将数据存储入MongoDB数据库

    目录 逆向分析爬取动态网页 了解静态网页和动态网页区别 1.判断静态网页  2.判断动态网页  逆向分析爬取动态网页 使用Selenium库爬取动态网页 安装Selenium库以及下载浏览器补丁 页面等待  页面操作 1.填充表单 2.执行JavaScript 元素选取 Selenium库的find_element的语法使用格式如下

    2024年02月15日
    浏览(119)
  • Python网页爬虫爬取豆瓣Top250电影数据——Xpath数据解析

    1.1 查看原页面信息 首先打开豆瓣Top250电影页面,其网址是:https://movie.douban.com/top250。 可以发现,该页面展示的电影信息有中英文电影名、导演、主演、上映年份、国籍、电影类型、评分等。 下滑到页面底部,发现第一页有25部电影的数据,并且可以点击页码数实现页面跳转

    2024年02月05日
    浏览(54)
  • Python爬虫入门教程!手把手教会你爬取网页数据

    其实在当今社会,网络上充斥着大量有用的数据,我们只需要耐心的观察,再加上一些技术手段,就可以获取到大量的有价值数据。这里的“技术手段”就是网络爬虫。今天就给大家分享一篇爬虫基础知识和入门教程: 爬虫就是自动获取网页内容的程序,例如搜索引擎,Go

    2023年04月26日
    浏览(116)
  • python爬虫 爬取网页图片

    目录 一:爬虫基础 二:安装html解析的python工具 三:爬取网页图片 爬虫基本过程: 1.请求标头 headers 2.创建一个会话 requests.Session 3.确定请求的路径 4.根据路径获取网页资源(HTML文件) 5.解析html文件BeautifulSoup div a 标签 获取对应的图片 6.建立网络连接进行下载  创建出下载的图

    2024年02月02日
    浏览(63)
  • 初学python爬虫学习笔记——爬取网页中小说标题

    一、要爬取的网站小说如下图 二、打开网页的“检查”,查看html页面 发现每个标题是列表下的一个个超链接,从183.html到869.html 可以使用for循环依次得到: 三、具体代码如下: 第一次学习爬虫,能得出查询结果,心中还是无限的高兴。 不过,还是发现的很多,比如for循环

    2024年02月09日
    浏览(48)
  • python爬虫实战 scrapy+selenium爬取动态网页

    最近学习了scrapy爬虫框架,想要找个目标练练手。由于现在很多网页都是动态的,因此还需要配合selenium爬取。本文旨在记录这次学习经历,如有疑问或不当之处,可以在评论区指出,一起学习。 对scrapy不了解的同学可以阅读这篇文章 爬虫框架 Scrapy 详解,对scrapy框架介绍的

    2024年02月07日
    浏览(83)
  • 【爬虫】5.5 Selenium 爬取Ajax网页数据

    目录   AJAX 简介 任务目标 创建Ajax网站 创建服务器程序 编写爬虫程序         AJAX(Asynchronous JavaScript And XML,异步 JavaScript 及 XML) Asynchronous 一种创建 交互式 、 快速动态 网页应用的网页开发技术 通过在后台与服务器进行少量数据交换,无需重新加载整个网页的情况下

    2024年02月10日
    浏览(45)
  • [爬虫篇]Python爬虫之爬取网页音频_爬虫怎么下载已经找到的声频

    audio_DATA_get = requests.get(url=audio_DATA,headers=headers) audio_DATA_get_text = audio_DATA_get.text audio_DATA_download_url = re.findall(‘“src”:“(.*?)”’,audio_DATA_get_text) print(audio_DATA_download_url) download_data_url = audio_DATA_download_url[0] try: open_download_data_url = urllib.request.urlopen(download_data_url) except: print(downlo

    2024年04月22日
    浏览(68)
  • 【python爬虫】中央气象局预报—静态网页图像爬取练习

    中央气象台 是中国气象局(中央气象台)发布的七天降水预报页面。这个页面提供了未来一周内各地区的降水预报情况,帮助人们了解即将到来的降水情况,以做出相应的应对措施。页面中的预报内容通常包括以下要点: 地区分布 :页面展示了中国各地区的降水预报情况。

    2024年02月10日
    浏览(40)
  • 爬虫爬取黑马程序员论坛的网页数据

    输入完成后运行将会是这样: 例如: 输入起始页码\\\"1\\\" 结束页码\\\"6\\\"  那么将会保存1—6页的网络代码 保存后也页面可以本地文件夹中查看    打开任意一个本地网页文件,将可以看到论坛上对应的内容 这样看来是不是很简单呢

    2024年02月06日
    浏览(233)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包