Python爬虫如何处理页面中的相对链接

问题描述

今天采集一个网站爬虫的时候,网站a标签中都是使用的相对链接。我获取到链接后无法直接使用来作为下一次请求获取详情页面。

解决方法

为了将相对链接转换为绝对链接,我们可以使用 Python 的 urllib.parse 模块中的 urljoin 函数。这个函数可以将一个基础 URL(base URL)和一个相对 URL 合并成一个绝对 URL。

下面是一个示例代码,展示了如何使用 urljoin 函数将相对链接补充完整:

python 复制代码
from urllib.parse import urljoin  
  
# 页面完整链接  
base_url = "https://zjjcmspublic.oss-cn-hangzhou-zwynet-d01-a.internet.cloud.zj.gov.cn/jcms_files/jcms1/web3077/site/flash/tjj/Reports1/2023%E6%B5%99%E6%B1%9F%E7%BB%9F%E8%AE%A1%E5%B9%B4%E9%89%B4/indexcn.html"  
  
# 获取到的相对链接  
relative_url = "./cn/html/2-1 历年总户数和总人口数(年底数).html"  
  
# 使用 urljoin 将相对链接转换为绝对链接  
absolute_url = urljoin(base_url, relative_url)  
  
print(absolute_url)

运行这段代码后,absolute_url 变量将包含完整的 URL。这样你就可以使用这个完整的 URL 去获取你想要的数据了。

相关推荐
一个天蝎座 白勺 程序猿18 分钟前
Python爬虫(10)Python数据存储实战:基于pymongo的MongoDB开发深度指南
数据库·爬虫·mongodb
Auroral1564 小时前
【Python爬虫详解】第八篇:突破反爬体系的工程实践
爬虫
专注API从业者18 小时前
《Go 语言高并发爬虫开发:淘宝商品 API 实时采集与 ETL 数据处理管道》
开发语言·后端·爬虫·golang
一个天蝎座 白勺 程序猿1 天前
Python爬虫(3)HTML核心技巧:从零掌握class与id选择器,精准定位网页元素
前端·爬虫·html
jiaoxingk1 天前
有关爬虫中数据库的封装——单线程爬虫
数据库·爬虫·python·mysql
知识中的海王2 天前
猿人学web端爬虫攻防大赛赛题第15题——备周则意怠-常见则不疑
爬虫·python
小白学大数据2 天前
如何避免爬虫因Cookie过期导致登录失效
开发语言·爬虫·python·scrapy
奋斗者1号2 天前
《Crawl4AI 爬虫工具部署配置全攻略》
网络·爬虫
Python×CATIA工业智造2 天前
爬虫技术入门:基本原理、数据抓取与动态页面处理
爬虫·python·pycharm
K哥爬虫2 天前
【验证码逆向专栏】某采购网,360 磐云盾、文字点选验证码逆向分析
爬虫