python网页数据抓取(python爬虫简单概括获取网页数据(图)代码)

优采云 发布时间: 2022-02-21 20:17

  python网页数据抓取(python爬虫简单概括获取网页数据(图)代码)

  文章目录

  前言:python爬虫的简单总结其实就是获取网页数据,然后按需提取!过程虽然简单,但需要结合多种技术,掌握爬虫库,编写高效的爬虫代码。

  一、先了解用户如何获取网络数据

  1、用户使用浏览器:浏览器提交请求—>下载网页代码—>解析成页面

  2、代码自动获取:模拟浏览器发送请求(获取网页代码html、css、javascript)->提取有用数据->存入数据库或文件

  python爬虫使用代码自动获取。具体流程为:

  

  二、简单了解网页源代码的构成1、web的基本编程语言

  简单了解可以上菜鸟教程

  1)HTML、CSS、JavaScript是Web开发者必须学习的3种语言。他们相互合作,形成了各种丰富的网站

  (1)HTML 定义了网页的内容

  (2)CSS 描述了页面的布局

  (3)JavaScript 控制页面的行为

  2)html5 简单示例

  

  3)html 中的 javaScript

  

  4)HTML 中的 CSS

  

  2、使用浏览器查看网页源代码

  1)网页右键查看源码(也就是我们要得到的)

  

  2)html代码,这里需要我们稍微了解一下它的组成,然后根据内容提取出来

  

  三、爬虫概述1、了解爬虫

  我们熟悉的一系列搜索引擎都是大型网络爬虫,比如百度、搜狗、360浏览器、谷歌搜索等等。每个搜索引擎都有自己的爬虫。比如360浏览器的爬虫叫360Spider,搜狗的爬虫叫Sogospider。

  2、python 爬虫

  百度搜索引擎,其实可以更形象的叫做百度蜘蛛(Baiduspider),它每天都会从海量互联网信息中抓取优质信息,并进行收录。当用户通过百度搜索关键词时,百度会先分析用户输入的关键词,然后从收录的网页中找出相关的网页,并根据网页排名排名规则。排序,最后将排序后的结果呈现给用户。在这个过程中,百度蜘蛛发挥了非常重要的作用。

  百度工程师为“百度蜘蛛”编写了相应的爬虫算法。通过应用这些算法,“百度蜘蛛”可以实现相应的搜索策略,如过滤掉重复网页、过滤优质网页等。应用不同的算法,爬虫的效率和爬取结果会有所不同。

  3、爬虫分类

  爬虫可以分为三类:一般网络爬虫、聚焦网络爬虫和增量网络爬虫。

  1)万能网络爬虫:是搜索引擎的重要组成部分,上面已经介绍过了,这里不再赘述。一般网络爬虫需要遵守robots协议,网站告诉搜索引擎哪些页面可以爬,哪些页面不可以爬。

  机器人协议:是一种“常规”协议,没有法律效力。体现了互联网人的“契约精神”。行业从业者会自觉遵守协议,故又称“君子协议”。

  2)专注网络爬虫:是针对特定需求的网络爬虫程序。它与一般爬虫的区别在于,聚焦爬虫在实现网页爬虫时会对网页内容进行过滤处理,并尽量保证只抓取与需求相关的网页信息。专注于网络爬虫,大大节省了硬件和网络资源。由于保存的页面少,所以更新速度很快,也满足了一些特定人群对特定领域信息的需求。

  3)增量网络爬虫:指对下载的网页进行增量更新。它是一种只抓取新生成或更改的网页的爬虫程序,可以在一定程度上保证抓取到的网页。获取的页面是最新的页面。

  4、爬虫应用

  随着互联网的飞速发展,万维网已经成为海量信息的载体。如何有效地提取和利用这些信息已成为一个巨大的挑战。于是,爬虫应运而生。它不仅可以用于搜索引擎领域,还可以用于大数据分析,并在商业领域得到了*敏*感*词*应用。

  1) 数据分析

  在数据分析领域,网络爬虫通常是采集海量数据的必备工具。对于数据分析师来说,要进行数据分析,首先要有数据源,通过学习爬虫,可以获得更多的数据源。在采集过程中,数据分析师可以根据自己的目的采集更多有价值的数据,并过滤掉那些无效数据。

  2) 业务

  对于企业来说,及时获取市场动态和产品信息非常重要。企业可以通过第三方平台购买数据,比如贵阳大数据交易所、数据堂等。当然,如果贵公司有爬虫工程师,也可以通过爬虫获取想要的信息。

  5、爬行动物是一把双刃剑

  爬虫是一把双刃剑,它给我们带来便利的同时,也给网络安全带来隐患。一些*敏*感*词*利用爬虫非法采集互联网上的网友信息,或者利用爬虫恶意攻击他人网站,造成网站瘫痪的严重后果。关于爬虫的合法使用,建议阅读《中华人民共和国网络安全法》。

  6、python爬虫教程

  为了限制爬虫带来的危险,大部分网站都有很好的反爬措施,所以在使用爬虫的时候一定要自觉遵守约定,不要非法获取他人信息,或者做对他人有害的事情。其他网站 的事情。

  为什么使用 Python 作为爬虫

  首先你要清楚,不仅Python可以做爬虫,PHP、Java、C/C++等都可以用来写爬虫程序,但是Python做爬虫是最简单的。以下是它们的优缺点的简要比较:

  PHP:对多线程和异步的支持不是很好,并发处理能力较弱;Java也常用于编写爬虫程序,但Java语言本身非常繁琐,代码量大,对初学者入门门槛较高;尽管 C/C++ 运行效率很高,但学习和开发的成本很高。编写一个小型爬虫可能需要很长时间。

  Python语言语法优美,代码简洁,开发效率高,支持多种爬虫模块,如urllib、requests、Bs4等。Python的request模块和解析模块丰富成熟,还提供了强大的Scrapy框架使编写爬虫程序更容易。因此,使用 Python 编写爬虫程序是一个非常不错的选择。

  7、爬虫的编写过程

  爬虫程序与其他程序不同,它的思维逻辑大体相似,所以我们不需要在逻辑上花很多时间。下面简单介绍一下用Python编写爬虫程序的过程:

  首先通过urllib模块的request方法打开URL,获取网页的HTML对象。

  使用浏览器打开网页源代码,分析网页结构和元素节点。

  通过 Beautiful Soup 或正则表达式提取数据。

  将数据存储到本地磁盘或数据库。

  当然,不限于上述一种过程。编写爬虫程序,需要具备良好的Python编程能力,这样在编写过程中会得心应手。爬虫需要尽量伪装*敏*感*词*类访问网站,而不是机器访问,否则会被网站的反爬策略限制,甚至直接封IP。

  四、python爬虫实践——获取博客浏览量

  废话不多说,代码

<p>import re

import requests

from requests import RequestException

import urllib.request

url = "https://blog.csdn.net/STCNXPARM/article/details/122297801"

def get_page(url):

try:

#请求头部,如果不加头部,则会被反爬虫网站识别出是爬虫,会导致获取不到数据

headers = {

'Referer': 'https://blog.csdn.net', # 伪装成从CSDN博客搜索到的文章

'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.75 Safari/537.36' # 伪装成浏览器

}

#获取网页源代码数据

response = requests.get(url, headers=headers)

if response.status_code == 200:

return response.text

return None

except RequestException:

print('请求出错')

return None

def parse_page(html):

try:

#使用正则匹配html代码中浏览量字段

read_num = int(re.compile('

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线