python 实现一个简单的网页爬虫程序

最近在学习python,以下为网页爬虫代码,供参考

1、爬取指定网页的标题和所有的连接

2、并将这些信息保存到一个文件中。

前置:因使用到网页相关的功能,故需导入requests、BeautifulSoup 库来完成

#导入网页相关的库

import requests

from bs4 import BeautifulSoup

#定义一个函数get_page()

def get_page(url):

response = requests.get(url) # 发送HTTP的get请求

解析响应内容为HTML(此处使用*.content,否则使用*.text有乱码)

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

获取链接的文本内容,即标题

*.title代表HTML文档中<title>标签,*.string属于则用于获取该标签内的直接文本内容

title = soup.title.string

links = soup.find_all('a') # 找到所有的<a>标签,即链接

打开文件用于保存

with open('results.txt', 'w', encoding='utf-8') as file:

file.write(f"网页标题:{title}") # 保存标题到文件

遍历所有连接

for link in links:

获取链接的href属性,即URL; # 保存链接到文件

file.write("\n\nURL:")

file.write(link.get('href'))

使用方法

get_page('https://mail.163.com')

3、远行后,可在"results.txt"文件查看到网页标题及URL

特别注意python的格式要求较高

相关推荐
zhangzeyuaaa6 分钟前
深入理解 Python GIL:从机制到释放时机
java·网络·python
PSLoverS10 分钟前
c++如何读取和修改可执行文件的PE头信息_IMAGE_NT_HEADERS解析【进阶】
jvm·数据库·python
gmaajt17 分钟前
React Native 单元测试中第三方依赖的正确 Mock 策略
jvm·数据库·python
a95114164222 分钟前
宝塔面板数据库查询响应慢_利用慢查询日志进行优化
jvm·数据库·python
zhangzeyuaaa28 分钟前
深入理解 Python 进程间通信:Queue 与 Pipe 实战解析
网络·python·中间件
2401_8314194440 分钟前
如何用 http 模块创建一个基础的 Web 服务器处理请求
jvm·数据库·python
pele40 分钟前
Redis如何防止AOF文件无限增大_触发BGREWRITEAOF命令进行日志重写
jvm·数据库·python
qq_4142565740 分钟前
golang如何设计HTTP中间件链_golang HTTP中间件链设计方法
jvm·数据库·python
m0_7467523041 分钟前
如何用方法简写语法在对象字面量中快速定义成员函数
jvm·数据库·python
qq_1898070343 分钟前
JavaScript 中高效定位二维数组间不匹配元素的行列索引
jvm·数据库·python