Python爬虫介绍——简单了解一下爬虫

1.下载requests库

在Python中,有两个非常流行的库用于爬虫开发:

  • requests:用于发送网络请求,获取网页内容.

  • BeautifulSoup:用于解析网页内容,提取需要的数据.

先安装爬虫的必要库

pip install requests

pip install beautifulsoup4

安装成功以后可以用这个查看库的信息

pip show requests

pip show beautifulsoup4

2.简单爬虫示例

接下来,我们会编写一个简单的爬虫,从一个网页上获取数据.

2.1. 获取网页内容

第一步是使用 requests 库来获取网页的内容.我们以获取百度首页为例.

复制代码
import requests

url = 'https://www.baidu.com'
response = requests.get(url)

print(response.text)

你会发现是乱码,这时候就要设置中文编码utf-8

复制代码
import requests

url = 'https://www.baidu.com'
response = requests.get(url)
response.encoding = 'utf-8'
print(response.text)

这些HTML代码,这就是百度首页的内容。

2. 2解析网页内容

获取网页内容后,我们需要用 BeautifulSoup 库来解析HTML,提取我们需要的信息,接下来我们解析百度首页的标题。

复制代码
import requests

url = 'https://www.baidu.com'
response = requests.get(url)
response.encoding = 'utf-8'

from bs4 import BeautifulSoup

soup = BeautifulSoup(response.text, 'html.parser')

title = soup.title.text
print('网页标题:', title)

2.3. 提取更多信息

让我们继续提取网页中的链接(<a>标签中的 href 属性)。这非常有用,例如你想抓取某个网站上的所有文章链接。

复制代码
import requests

url = 'https://www.baidu.com'
response = requests.get(url)
response.encoding = 'utf-8'

from bs4 import BeautifulSoup

soup = BeautifulSoup(response.text, 'html.parser')

title = soup.title.text

links = soup.find_all('a')

for link in links:
    href = link.get('href')
    print(href)
  • soup.find_all('a') 用于获取网页中的所有链接。
  • link.get('href') 获取每个链接的 href 属性,也就是网址。

日记

2月1日,星期日

无话可说

今天是单休日,我无话可说。

相关推荐
dFObBIMmai21 小时前
CSS如何检测页面浮动元素位置_使用审查工具与clear
jvm·数据库·python
亿牛云爬虫专家21 小时前
Go爬虫进阶:如何优雅地在Colly框架中实现无缝代理切换?
爬虫·中间件·golang·爬虫代理·colly框架·代理切换·api提取
每天吃饭的羊21 小时前
UMD和IIfe
开发语言·前端·javascript
qq_4609784021 小时前
实现 Svelte 中基于数组索引的 details 元素单开单关交互
jvm·数据库·python
AI科技星21 小时前
ELN 升级:π 级数自动生成器全域数理架构
大数据·人工智能·python·算法·金融
gCode Teacher 格码致知21 小时前
Javascript提高:自定义的占位符替换-由Deepseek产生
开发语言·javascript·ecmascript
是个西兰花21 小时前
C++11:智能指针
开发语言·c++·智能指针·rall
用户93520139867921 小时前
淘宝开放平台 item_cat_get 接口详解:获取淘宝商品类目
python
摇滚侠21 小时前
Java 零基础全套视频教程,面向对象(高级),笔记 105-120
java·开发语言·笔记
dfdfadffa21 小时前
SQL窗口函数如何优化嵌套子查询_提升执行效率
jvm·数据库·python