Python爬虫系列,入门教学适合新手小白、零基础!

python爬虫入门教程(非常详细) 爬虫指的是一种自动化程序,能够模拟人类在互联网上的浏览行为,自动从互联网上抓取、预处理并保存所需要的信息。爬虫运行的过程一般是先制定规则(如指定要抓取的网址、要抓取的信息的类型等),紧接着获取该网址的HTML源代码,根据规则对源代码进行解析和抽取,最后进行处理和保存。爬虫在实际应用中广泛使用,如搜索引擎、大数据分析、交易数据采集等领域,都需要用到爬虫技术来实现信息的定向采集和处理。 阅读详情

启

今天给大家带来的是python爬虫入门,文章以简为要,引导初学者快速上手爬虫。话不多说,我们开始今天的内容。在初步学习爬虫之前,我们先用一个例子来看看爬虫是什么。

A同学想要了解python是一种怎样的语言,于是打开了某度搜索引擎,却发现占据屏幕的是各类python学习课程的广告,而真正介绍python的内容却被放在了后面。事实上,在大多数时候,我们用浏览器获得的信息是十分繁冗的,因此筛选提取网页中对我们有用的数据就显得十分必要了。我们的爬虫程序要做的便是:模拟浏览器发送请求–>获取网页代码–>筛选提取数据–>存放数据。

前期准备

爬虫程序中需要用到一些第三方库,我们这里使用的是requests库和BeautifulSoup4库。话不多说,让我们先来做好这些准备。(笔者使用的是IDLE3.8版本编辑器,及win系统)
requests 2.22.0下载地址:https://pypi.org/project/requests/#files BeautifulSoup4 4.8.2下载地址:https://pypi.org/project/beautifulsoup4/#files
python3.0以上版本一般自带pip(可提供对第三方库的下载安装等),故第三方库下载后可直接进行安装。1. 打开cmd

2. 若python安装在启动盘(一般是C盘)直接键入“pip install requests”命令即可。

3. 若python不在启动盘则键入“d:”然后“cd python.exe所在目录”,直接键入 ”python -m pip install requests”命令即可。

(BeautifulSoup4库安装步骤相同)

发送请求

模拟浏览器发送请求时,我们可以使用requests库帮助我们。下面给出requests库的7个主要方法:

发送请求后,服务器会接受请求,并返回一个response。

response作为一个对象,具有如下常用属性:

接下来,我们以访问百度主页的代码为例来看看吧!

import requests
url="http://www.baidu.com/"
res=requests.get(url)
print(res.status_code)
200


其中,我们介绍一下requests.get()函数的带参数形式。params是字典或字节序列,可以添加到url中;****headers是HTTP的定制头等等。我们以headers为例,headers是HTTP的定制头,一些服务器在处理requests请求时会识别请求头,并拦截python爬虫。

import requests
url="http://www.zhihu.com/"
res=requests.get(url)
print(res.status_code)
400
print(res.request.headers)
{'User-Agent': 'python-requests/2.22.0', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive'}


可以看到我们通过python访问知乎首页被拦截了,查看请求头时发现User-agent是python—-requests/2.22.0。下面我们尝试修改请求头伪装成浏览器:
image

import requests
pre={'User-agent':'Mozilla/5.0'}
res=requests.get("https://www.zhihu.com/billboard",headers=pre)
print(res.status_code)
200


可见,修改请求头后访问成功。利用requests的get方法和response的content属性(图片以二进制形式保存),我们可以下载网络上的一些图片,下面以获取新浪新闻的一张图片为例:

import requests
url="http://www.sinaimg.cn/dy/slidenews/5_img/2015_48/30939_1300019_688168.jpg"
path="D://pics//"+"maomi.jpg"
try:        
  res=requests.get(url)        
  with open(path,'wb') as pic:                
    pic.write(res.content)                
    pic.close()                
    print("文件保存成功")
  except:        
    print("爬取失败")文件保存成功

解析内容

Beautiful Soup库是解析、遍历、维护文档树的功能库。

简单地说,BeautifulSoup能够帮助用户将response中的html内容解析,得到一个BeautifulSoup的对象,并且能够以标准的缩进格式输出。我们以知乎热榜网页为例(注意B和S要大写哦):

import requests
from bs4 import BeautifulSoup
pre={'User-agent':'Mozilla/5.0'}
res=requests.get("https://www.zhihu.com/billboard",headers=pre)
rep=res.text
soup=BeautifulSoup(rep,"html.parser")
print(soup)


运行代码后可以看见,已经产生标准缩进格式输出。(截取部分如下图)

这里,我们来认识一下BeautifulSoup类的部分元素:

在代码运行返回的html内容中,可以看见a标签里包含了

等子孙标签,其中包含了我们需要的热榜话题,利用这段代码我们可以获取热榜第一的信息进而获取榜单全部话题。

import requests
from bs4 import BeautifulSoup
pre={'User-agent':'Mozilla/5.0'}
try:
    res=requests.get("https://www.zhihu.com/billboard",headers=pre)
    res.raise_for_status
    rep=res.text
except:
    print("连接失败")
try:
    soup=BeautifulSoup(rep,"html.parser")
    con=soup.find_all('div',class_="HotList-itemTitle")
    for i in range(len(con)):
        print(con[i].text)
except:
    print("获取失败")


我们观察到所有热榜话题所在标签name都是div,属性中都包含class=“HotList- itemTitle”。我们使用bs4的find_all函数,返回一个包含许多元素的列表,然后利用text属性提取有用的字符逐个输出。

今天的爬虫入门我们就先讲到这里哦,小周下期继续给大家带来爬虫分享哦!

最后这里给大家免费分享一份Python学习资料,包含了视频、源码、课件,希望能够帮助到那些不满现状,想提示自己却又没用方向的朋友,也可以和我一起来交流呀!

编辑资料、学习路线图、源代码、软件安装包等!【点击这里】领取!
在这里插入图片描述
在这里插入图片描述

Python 网络爬虫进阶教学全指南 本次博客将深入探究 Python 网络爬虫的核心知识与实用技巧,引领大家从入门迈向精通 阅读详情

相关推荐

我的爬虫入门书 —— 《Python3网络爬虫开发实战(第二版)》

年前学习python基础知识之后,在好奇心的推动下,我开始接触了python网络爬虫,而在刚开始接触网络爬虫时,繁多的资料让我猝不及防,对于习惯于优先通过书籍进行自主学习的我来说,通过长期看视频学习反而不是很习惯,但是在网络上找到的许多爬虫相关资料,不是说的过于简略,就是部分内容有些“过时”。该跟谁走?该怎么走?这个问题那段时间一直困扰着我。所幸,在热心群友的推荐下(haha,真的很热心的一个老哥),我入手了崔大写的《Python3网络爬虫开发实战(第二版)》,找到了符合我状况的“引路书”。

weixin_68789096的博客 2158

Python爬虫入门教程(非常详细)

爬虫的全称为网络爬虫,简称爬虫,别名有网络机器人,网络蜘蛛等等。网络爬虫是一种自动获取网页内容的程序,为搜索引擎提供了重要的数据支撑。搜索引擎通过网络爬虫技术,将互联网中丰富的网页信息保存到本地,形成镜像备份。我们熟悉的谷歌、百度本质上也可理解为一种爬虫。如果形象地理解,爬虫就如同一只机器蜘蛛,它的基本操作就是模拟人的行为去各个网站抓取数据或返回数据。

2201_75362610的博客 2万+

五分钟学会Python网络爬虫,这可能是我见过最简单的基础教学了!

五分钟学会Python网络爬虫前言什么是爬虫爬虫的基本原理爬虫工具和语言选择一、爬虫工具二、爬虫语言Python 爬虫Selenium库的使用一、基础知识二、Selenium基础爬虫实例演示 前言 “爬虫写得好,牢饭吃到饱”,业内常用这个段子来调侃爬虫工程师。因为做爬虫有些敏感、重要的数据是不能随便抓取,进行商业利用的,不然随时都可能被请去“喝茶”。今年,就有好多互金公司因为爬虫的问题,被举报调查。 但不管怎样,爬虫技术是无罪的,还是值得我们开发人员去学习了解一下的。在学习之前,我们还是要先了解一下相关概念

program_G的博客 1966

Python数据爬虫教程(非常详细)从零基础入门到精通,看完这一篇就够了

Scrapy 是用 Python 实现的一个为了爬取网站数据、提取结构性数据而编写的应用框架。Scrapy 常应用在包括数据挖掘,信息处理或存储历史数据等一系列的程序中。通常我们可以很简单的通过Scrapy 框架实现一个爬虫,抓取指定网站的内容或图片。: 负责Spider、ItemPipeline、Downloader、Scheduler 中间的通讯,信号、数据传递等。: 它负责接受引擎发送过来的Request请求,并按照一定的 方式进行整理排 列,入队,当引擎需要时,交还给引擎。

xx16755498986的博客 1万+

2024年Python最新Python爬虫入门教程:初识爬虫_程序员爬虫教学

模拟浏览器,发送请求,获取响应网络爬虫,英文名为Spider,又称为网页蜘蛛,网络机器人,在数据分析应用中,更多的将爬虫称为数据采集程序,是一种按照一定的规则,自动地抓取网络信息的程序或者脚本。原则上,只要是客户端(浏览器)能做的事情,爬虫都能够做爬虫也只能获取客户端(浏览器)所展示出来的数据网络中的数据可以是由web服务器【Nginx/Apache】,数据库服务【MySQL/Redis/MongoDB】,索引库,大数据,视频/图片库,云存储【阿里云的OSS】等提供的,最主要的来源是Web服务器。

2401_84584609的博客 1660

OBS直播美颜全攻略:从插件下载到参数调校一站式指南

本文提供OBS直播美颜插件从下载安装到参数调校的一站式指南。详细介绍了如何安全获取并安装OBS美颜插件,重点讲解了在OBS中添加美颜滤镜的核心步骤,并分享了磨皮、肤色调整、细节增强等关键参数的实战调校技巧,帮助主播打造自然、专业的直播形象。

weixin_29197835的博客 329

Python爬虫教程(非常详细)从零基础入门到精通,看完这一篇就够了

对于绝大多数想要学习Python的朋友而言,爬虫绝对是学习Python的最好的骑手和入门方式。

优快云_430422的博客 3210

Ubuntu 22.04 搭建 PX4 飞控系统完全指南:从仿真到硬件试飞

定义消息文件protobufuint64 timestamp # 时间戳float32 temperature # 温度float32 humidity # 湿度生成代码:bashPX4 在 Ubuntu 22.04 的搭建涉及环境配置、编译仿真、硬件连接等多环节,核心是理解 PX4 1.14 的新特性(uXRCE-DDS、动态控制分配)。通过本文指南,开发者可快速构建稳定的 PX4 开发环境,为无人机应用开发奠定基础。

zqmgx13291的博客 3044

python爬虫入门教程(一):开始爬虫前的准备工作

python爬虫(数据采集)入门教程

笔墨留年。 8万+

智能车图像处理5-入门级分析4 ---环岛的状态机与补线

PS :入门级文章适合新手,如果已经有基础可以去看进阶篇文章。

taiyuezyh的博客 8263

系统建模语言 (SysML)

系统建模语言

追赶时代的博客 750

如何自学Python爬虫?新手小白入门教程

如何自学Python爬虫?在大家自学爬虫之前要解决两个常见的问题,一是爬虫到底是什么?二是问什么要用Python来做爬虫?爬虫其实就是自动抓取页面信息的网络机器人,至于用Python做爬虫的原因,当然还是为了方便。本文将为大家提供一份详细的新手入门教程,带大家从入门到精通Python爬虫技能。 一、爬虫是什么? 网络爬虫又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者。它是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。另外一些不常使用的名字还有蚂蚁、自动索引、模拟程序。其

5198

ESP32-C3模组上跑通OTA升级(3)

ESP32-C3模组上跑通OTA升级(3)

phmatthaus的专栏 1352

零基础小白学Python爬虫,看这篇就够了 !

网络爬虫,其实叫作网络数据采集更容易理解。就是通过编程向网络服务器请求数据(HTML表单),然后解析HTML,提取出自己想要的数据。根据url获取HTML数据解析HTML,获取目标信息存储数据重复第一步这会涉及到数据库、网络服务器、HTTP协议、HTML、数据科学、网络安全、图像处理等非常多的内容。但对于初学者而言,并不需要掌握这么多。文末领取最新Python全套学习资源。

xiaolinyui的博客 2158

AI在电商中的搜索优化

自拟标题 《AI技术助力电商搜索优化:深度解析一线大厂面试题及算法编程实践》 概述 随着人工智能技术的不断发展,AI在电商搜索优化中的应用日益广泛。本文将围绕“AI在电商中的搜索优化”这一主题,介绍国内头部一线大厂如阿里巴巴、百度、腾讯、字节跳动等在面试中常见的AI相关面试题和算法编程题,并提供详尽的答案解

AI天才研究院 913

使用ggplot2包中的双Y轴功能在R语言中可视化时间序列数据,并在时序数据末尾添加数值标签是一种有效的数据展示方式

使用ggplot2包中的双Y轴功能在R语言中可视化时间序列数据,并在时序数据末尾添加数值标签是一种有效的数据展示方式。通过这种方式,我们可以同时展示两个变量的趋势,并在时序数据末尾添加数值标签,使得数据更加直观和易于理解。假设我们有一个包含两个变量的时间序列数据集,一个是时间变量,另一个是对应的数值变量。现在,我们可以使用ggplot2包来创建一个基本的时间序列图,其中包含两个数值变量。接下来,我们将添加一个双Y轴,并在时序数据末尾添加数值标签。函数在数值1的每个数据点上添加数值标签。

Orion_O的博客 273

python网络爬虫实战教学——urllib的使用(1)

首先介绍一个Python库叫作urllib,利用它就可以实现HTTP请求的发送,而且不需要关心HTTP协议本身甚至更底层的实现,我们要做的是指定请求的URL`请求头`请求体等信息。此外urlljb还可以把服务器返回的响应转化为Python对象,我们通过该对象便可以方便地获取响应的相关信息’如响应状态码、响应头、响应体等。

阿极的博客 9383

Python 爬虫 + 数据分析:社会调查数据抓取与结果可视化分析

在当今数字化时代,数据已成为推动社会发展的关键资源之一。无论是市场调研、学术研究还是政策制定,社会调查数据都扮演着至关重要的角色。通过 Python 爬虫技术,我们可以高效地获取这些数据,并结合数据分析与可视化工具,深入挖掘数据背后的价值。本文将通过一个完整的实战项目,带你掌握如何使用 Python 爬虫抓取社会调查数据,并进行可视化分析。

yansideyucsdn的博客 126

Python爬虫教学PPT简介

Python爬虫教学PPT简介 【下载地址】Python爬虫教学PPT简介 这份《Python爬虫教学PPT》专为零基础初学者设计,帮助您轻松掌握Python爬虫技术。教程涵盖Python基础语法、网络爬虫原理、常用请求库、数据解析方法及动态网页爬取技巧,并配有实战案例,助您边学边练。无论您是编程新手、开发者,还是对Py...

gitblog_06748的博客 944

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

Python网络爬虫经典书籍推荐

1. Python编程:从入门到实践 - 2016 本书是一本针对所有层次的Python 读者而作的Python 入门书。全书分两部分:第一部分介绍用Python 编程所必须了解的基本概念,包括matplotlib、NumPy 和Pygal 等强大的Python 库和工具介绍,以及列表、字典、if 语句、类、文件与异常、代码测试等内容;第二部分将理论付诸实践,讲解如何开发三个项目,包括简单的Python 2D 游戏开发如何利用数据生成交互式的信息图,以及创建和定制简单的Web 应用,并帮读者解决常..

铃响了铎 8226

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

python网络爬虫从入门到精通吕云翔_Python 网络爬虫从入门到精通

《Python 网络爬虫从入门到精通》的主旨是介绍如何结合Python进行网络爬虫程序的开发,从Python语言的基本特性入手,详细介绍了Python网络爬虫开发的各个方面,涉及HTTP、HTML、JavaScript、正则表达式、自然语言处理、数据科学等不同领域的内容。全书共15章,包括Python基础知识、网站分析、网页解析、Python文件读写、Python与数据库、AJAX技术、模拟登录、...

weixin_39921689的博客 578

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

python 网络爬虫全流程教学,从入门到实战(requests+bs4+存储文件)

python 网络爬虫全流程教学,从入门到实战(requests+bs4+存储文件)

qq_57340195的博客 6157

史上最详细Python爬虫基础教学(一)

目录一、前言二、爬虫简介2.1 什么是爬虫2.2 基本的爬虫流程2.3 爬虫的分类2.4 robots协议 一、前言 首先,我也是个爬虫小白,也在努力的学习中,当然,接触python也不只是为了去学爬虫,数据分析啊,机器学习和深度学习啊,都是我努力的目标。我开始写这个爬虫教程也是想和我一样想学好爬虫的小白在边自己去写教程的同时可以去温习一下旧知识,更能够在学习新知识的时候加深印象,我会在以...

weixin_45346759的博客 2597

Python3爬虫(一):Python的入门学习以及Python网络爬虫的初步认识

其实对于Python,一直想去学习,但一直没有足够的的时候去研究,这次趁疫情在家的时间,对于Pyathon好好的研究研究。算是作为自己对于Python3以及Python爬虫的学习笔记,对于以后有一个很好的回顾 。   希望能和大家一起交流,一起进步!!!

baiyucraft的博客 1384

小白如何入门Python爬虫?这是我见过最详细的入门教学_python 爬取 小白教程

网络爬虫,其实叫作网络数据采集更容易理解。就是通过编程向网络服务器请求数据(HTML表单),然后解析HTML,提取出自己想要的数据。基本流程归纳为四大步:1.发起请求通过HTTP库向目标站点发起请求,即发送一个Request,请求可以包含额外的headers等信息,然后等待服务器响应。这个请求的过程就像我们打开浏览器,在浏览器地址栏输入网址:www.baidu.com,然后点击回车。这个过程其实就相当于浏览器作为一个浏览的客户端,向服务器端发送了 一次请求。2.获取响应内容。

2401_84563080的博客 1195
上一篇: 循序渐进学Python,Python入门基础知识(建议收藏)
下一篇: Python入门基础!
Python_trys
博客等级 码龄2年 4380粉丝 377原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值