python网络爬虫

一、网络爬虫的介绍

1、网络爬虫库

网络爬虫通俗来讲就是使用代码将HTML网页的内容下载到本地的过程。爬虫网页主要是为了获取网页中的关键信息。python语言中提供了多个具有爬虫功能的库

1)urllib库

是python自带的标准库,不用下载。含有大量爬虫功能,但其代码编写比较复制

2)requests库

是python的第三方库,需要下载。由于requests库是在urllib库的基础上建立的,它包含urllib库的功能,所以使用此库会更简洁

3)scrapy库

是python的第三方库,需要下载,是适用于专业应用程序开发的网络爬虫库

4)selenium库

是python的第三方库,需要下载,可用于驱动计算机中的浏览器执行相关命令,无须用户手动操作

本篇主要介绍requests库和selenium库

2、robots.txt

不是所有的网站都允许被爬取,在大部分网站的根目录中存在一个robot.txt文件,用于声明此网站中禁止访问的url和可以访问的url。在这里就不详细介绍了,想要了解里面内容可以去网上查找

二、获取网页资源

requests库具有获取网页内容和向网页中提交信息的功能

1、get()函数

在requests库中获取HTML网内容的方法是使用get()函数形式如下:

get(url,params=None,**kwargs)

参数url;表示需要获取的HTML网址

参数params:表示可选参数,以字典的形式发送信息,当需要向网页中提交查询信息时使用

参数**kwargs:表示请求采用的可选参数

2、get()搜索信息

在网页搜索bilibili中,输入关键字python,可以看到下图的信息

在搜索结果网页中可以看到当前页面的网址为https://www.bilibili.com/search?keyword=python,其中https://www.bilibili.com/为官网主页,search表示搜索,keyword表示搜索的关键字,这里值为python表示需要搜索的关键词是'python'

在requests库中可以充分利用以上方法实现获取网页中的资源

3、get()添加信息

get()函数中第二个参数params会以字典的形式在url后自动添加信息,需要提取将params定义为字典

三、项目案例:实现处理获取的网页信息

项目描述

使用get()函数获取HTML网页源代码的目的在于让获取的信息为用户所用

项目任务

"新书快递-人邮教育社区"网页中上架了新书,现需要使用requests库爬取当前网页中所有新书的书名,如图,一共12本

相关推荐
前端付豪21 分钟前
LangChain链 写一篇完美推文?用SequencialChain链接不同的组件
人工智能·python·langchain
曲幽1 小时前
FastAPI实战:打造本地文生图接口,ollama+diffusers让AI绘画更听话
python·fastapi·web·cors·diffusers·lcm·ollama·dreamshaper8·txt2img
老赵全栈实战1 小时前
Pydantic配置管理最佳实践(一)
python
阿尔的代码屋7 小时前
[大模型实战 07] 基于 LlamaIndex ReAct 框架手搓全自动博客监控 Agent
人工智能·python
AI探索者1 天前
LangGraph StateGraph 实战:状态机聊天机器人构建指南
python
AI探索者1 天前
LangGraph 入门:构建带记忆功能的天气查询 Agent
python
FishCoderh1 天前
Python自动化办公实战:批量重命名文件,告别手动操作
python
躺平大鹅1 天前
Python函数入门详解(定义+调用+参数)
python
曲幽1 天前
我用FastAPI接ollama大模型,差点被asyncio整崩溃(附对话窗口实战)
python·fastapi·web·async·httpx·asyncio·ollama
两万五千个小时1 天前
落地实现 Anthropic Multi-Agent Research System
人工智能·python·架构