iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python网络爬虫之获取网络数据
  • 791
分享到

Python网络爬虫之获取网络数据

Python获取网络数据Python爬取数据 2023-05-18 11:05:36 791人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

目录使用 python 获取网络数据编写爬虫代码使用 IP 代理总结Python 语言的优势在于其功能强大,可以用于网络数据采集、数据分析等各种应用场景。本篇文章将介绍如何使用 Py

Python 语言的优势在于其功能强大,可以用于网络数据采集、数据分析等各种应用场景。本篇文章将介绍如何使用 Python 获取网络数据、使用 requests 库、编写爬虫代码以及使用 IP 代理。

使用 Python 获取网络数据

使用 Python 语言从互联网上获取数据是一项非常常见的任务。Python 有一个名为 requests 的库,它是一个 Python 的 Http 客户端库,用于向 WEB 服务器发起 HTTP 请求。

我们可以通过以下代码使用 requests 库向指定的 URL 发起 HTTP 请求:

import requests
response = requests.get('<http://www.example.com>')

其中,response 对象将包含服务器返回的响应。使用 response.text 可以获取响应的文本内容。

此外,我们还可以使用以下代码获取二进制资源:

import requests
response = requests.get('<http://www.example.com/image.png>')
with open('image.png', 'wb') as f:
    f.write(response.content)

使用 response.content 可以获取服务器返回的二进制数据。

编写爬虫代码

爬虫是一种自动化程序,可以通过网络爬取网页数据,并将其存储在数据库或文件中。爬虫在数据采集、信息监控、内容分析等领域有着广泛的应用。Python 语言是爬虫编写的常用语言,因为它具有简单易学、代码量少、库丰富等优点。

我们以“豆瓣电影”为例,介绍如何使用 Python 编写爬虫代码。首先,我们使用 requests 库获取网页的 html 代码,然后将整个代码看成一个长字符串,使用正则表达式的捕获组从字符串提取需要的内容。

豆瓣电影 Top250 页面的地址是 https://movie.douban.com/top250?start=0,其中 start 参数表示从第几个电影开始获取。每页共展示了 25 部电影,如果要获取 Top250 数据,我们共需要访问 10 个页面,对应的地址是 https://movie.douban.com/top250?start=xxx,这里的 xxx 如果为 0 就是第一页,如果 xxx 的值是 100,那么我们可以访问到第五页。

我们以获取电影的标题和评分为例,代码如下所示:

import re
import requests
import time
import random
for page in range(1, 11):
    resp = requests.get(
        url=f'<https://movie.douban.com/top250?start=>{(page - 1) * 25}',
        headers={'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.159 Safari/537.36'}
    )
    # 通过正则表达式获取class属性为title且标签体不以&开头的span标签并用捕获组提取标签内容
    pattern1 = re.compile(r'<span class="title">([^&]*?)</span>')
    titles = pattern1.findall(resp.text)
    # 通过正则表达式获取class属性为rating_num的span标签并用捕获组提取标签内容
    pattern2 = re.compile(r'<span class="rating_num".*?>(.*?)</span>')
    ranks = pattern2.findall(resp.text)
    # 使用zip压缩两个列表,循环遍历所有的电影标题和评分
    for title, rank in zip(titles, ranks):
        print(title, rank)
    # 随机休眠1-5秒,避免爬取页面过于频繁
    time.sleep(random.random() * 4 + 1)

在上述代码中,我们通过正则表达式获取标签体为标题和评分的 span 标签,并用捕获组提取标签内容。使用 zip 压缩两个列表,循环遍历所有电影标题和评分。

使用 IP 代理

许多网站对爬虫程序比较反感,因为爬虫程序会耗费掉它们很多的网络带宽,并制造很多无效的流量。为了隐匿身份,通常需要使用 IP 代理来访问网站。商业 IP 代理(如蘑菇代理、芝麻代理、快代理等)是一个好的选择,使用商业 IP 代理可以让被爬取的网站无法获取爬虫程序来源的真实 IP 地址,从而无法简单的通过 IP 地址对爬虫程序进行封禁。

以蘑菇代理为例,我们可以在该网站注册一个账号,然后购买相应的套餐来获得商业 IP 代理。蘑菇代理提供了两种接入代理的方式,分别是 api 私密代理和 HTTP 隧道代理,前者是通过请求蘑菇代理的 API 接口获取代理服务器地址,后者是直接使用统一的代理服务器 IP 和端口。

使用 IP 代理的代码如下所示:

import requests
proxies = {
    'http': '<http://username:passWord@ip>:port',
    'https': '<https://username:password@ip>:port'
}
response = requests.get('<http://www.example.com>', proxies=proxies)

其中,usernamepassword 分别是蘑菇代理账号的用户名和密码,ipport 分别是代理服务器的 IP 地址和端口号。注意,不同的代理提供商的接入方式可能不同,需要根据实际情况进行相应的修改。

总结

本文介绍了 Python 获取网络数据、使用 requests 库、编写爬虫代码以及使用 IP 代理的方法。Python 的 requests 库非常方便,可以帮助我们快速访问网络资源。编写爬虫程序需要掌握正则表达式、HTTP 协议等知识,同时需要注意爬取速度和频率,以避免对被爬取网站造成负担。最后,使用 IP 代理可以帮助我们隐匿身份,保护我们的网络安全

到此这篇关于Python网络爬虫之获取网络数据的文章就介绍到这了,更多相关Python获取网络数据内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Python网络爬虫之获取网络数据

本文链接: https://www.lsjlt.com/news/211981.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python网络爬虫之获取网络数据
    目录使用 Python 获取网络数据编写爬虫代码使用 IP 代理总结Python 语言的优势在于其功能强大,可以用于网络数据采集、数据分析等各种应用场景。本篇文章将介绍如何使用 Py...
    99+
    2023-05-18
    Python获取网络数据 Python爬取数据
  • Python网络爬虫之怎么获取网络数据
    使用 Python 获取网络数据使用 Python 语言从互联网上获取数据是一项非常常见的任务。Python 有一个名为 requests 的库,它是一个 Python 的 HTTP 客户端库,用于向 Web 服务器发起 HTTP 请求。我...
    99+
    2023-05-14
    Python
  • Python网络爬虫之如何获取网络数据
    本篇内容介绍了“Python网络爬虫之如何获取网络数据”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!使用 Python 获取网络数据使用 P...
    99+
    2023-07-06
  • python之网络爬虫
    一、演绎自已的北爱         踏上北漂的航班,开始演奏了我自已的北京爱情故事二、爬虫11、网络爬虫的思路首先:指定一个url,然后打开这个url地址,读其中的内容。其次:从读取的内容中过滤关键字;这一步是关键,可以通过查看源代码的方式...
    99+
    2023-01-31
    爬虫 网络 python
  • Python爬虫之网络请求
    目录1.IP代理2.Cookie3.异常处理 1.IP代理 某些网站会检测一段时间内某IP的访问次数,若访问次数过多会禁止访问,这时需要设置一些代理服务器,每隔一段时间换一...
    99+
    2024-04-02
  • Python网络爬虫之HTTP原理
    目录⭐️爬虫基础🌟HTTP 基本原理✨URI和 URL✨超文本✨HTTP 和HTTPS ✨HTTP 请求过程✨请求✨响应⭐️爬虫基础 在写爬虫之前,我们还需要了解一些基础知...
    99+
    2023-05-15
    Python网络爬虫HTTP原理 Python网络HTTP原理 Python HTTP原理
  • Python网络爬虫之Web网页基础
    目录⭐️Web网页基础🌟1.网页的组成✨HTML✨CSS✨JavaScript🌟2.网页的结构🌟3.节点树和节点间的关系🌟4.选择器🌟5.总结⭐️Web网页基础 我们在学习爬虫之前,...
    99+
    2023-05-15
    Python网络爬虫Web网页基础 Python网络Web网页基础 Python Web网页基础
  • python写网络爬虫
    #!/usr/bin/evn python import re #导入正则表达式模块import urllib #导入urllib模块,读取页面与下载页面需要用到def getH...
    99+
    2023-01-31
    爬虫 网络 python
  • 网络爬虫之scrapy爬取某招聘网手机A
             过段时间要开始找新工作了,爬取一些岗位信息来分析一下吧。目前主流的招聘网站包括前程无忧、智联、BOSS直聘、拉勾等等。有段时间时间没爬取手机APP了,这次写一个爬虫爬取前程无忧手机APP岗位信息,其他招聘网站后续再更新...
    99+
    2023-01-30
    爬虫 招聘网 手机
  • Python网络爬虫与信息提取
    Requests安装 用管理员身份打开命令提示符: pip install requests 测试:打开IDLE: >>> import requests >>> r = requests.get("...
    99+
    2023-01-31
    爬虫 网络 信息
  • 网络爬虫之路 代理ip的获取与检测
    现如今大数据时代,数据的信息的重要性已经涉及到很多的方面。爬虫也因此应运而生,成为了很火的一种技术。现在从事爬虫技术工作的人很多,很多的不管大还是小的公司,只要对数据有需求都需要用到爬虫,而爬虫代理对于数据的获取又是一个不可或缺的要素,很多...
    99+
    2023-06-03
  • python网络爬虫实战
    目录一、概述二、原理三、爬虫分类1、传统爬虫2、聚焦爬虫3、通用网络爬虫(全网爬虫)四、网页抓取策略1、宽度优先搜索:2、深度优先搜索:3、最佳优先搜索:4、反向链接数策略:5、Pa...
    99+
    2024-04-02
  • 网络爬虫逆向(企名片,创业项目数据获取)
    文章目录 网页解析使用Python代码调用JS代码进行数据抓取 目标网址:https://www.qimingpian.com/finosda/project/pinvestment 抓取目标: 创业项目名称业务行业领域地区投资...
    99+
    2023-08-25
    爬虫 网络 服务器
  • python如何获取网络数据
    目录Retrieving Data over HTTPRetrieving Data with urllibRetrieving Data from XMLRetrieving Da...
    99+
    2024-04-02
  • Python网络爬虫实战案例之:7000
    一、前言 本文是《Python开发实战案例之网络爬虫》的第三部分:7000本电子书下载网络爬虫开发实战详解。配套视频课程详见51CTO学院请添加链接描述。 二、章节目录 3.1 业务流程3.2 页面结构分析:目录页3.3 页面结构分析:详情...
    99+
    2023-01-31
    爬虫 实战 案例
  • python爬虫#网络请求request
    中文文档 http://docs.python-requests.org/zh_CN/latest/user/quickstart.html requests库 虽然Python的标准库中 urllib模块已经包含了平常我们使用的大多数功...
    99+
    2023-01-30
    爬虫 网络 python
  • Python中怎么利用网络爬虫获取招聘信息
    Python中怎么利用网络爬虫获取招聘信息,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。定义一个class类继承object,定义init方法继承self,主函...
    99+
    2023-06-16
  • Python网络爬虫之Web网页基础是什么
    本文小编为大家详细介绍“Python网络爬虫之Web网页基础是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“Python网络爬虫之Web网页基础是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。1.网页的...
    99+
    2023-07-05
  • python获取网络数据的方法
    本篇内容主要讲解“python获取网络数据的方法”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“python获取网络数据的方法”吧!Retrieving Data over HTTPPython ...
    99+
    2023-06-14
  • python爬虫爬取赶集网数据
    一.创建项目 scrapy startproject putu 二.创建spider文件 scrapy genspider  patubole patubole.com   三.利用chrome浏览器分析出房价和标题的两个字段的x...
    99+
    2023-01-31
    爬虫 数据 赶集网
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作