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 去获取你想要的数据了。

相关推荐
猫头虎1 天前
PyCharm 2025.3 最新变化:值得更新吗?
ide·爬虫·python·pycharm·beautifulsoup·ai编程·pip
有味道的男人1 天前
1688数据采集:官方API与网页爬虫实战指南
java·服务器·爬虫
有味道的男人1 天前
Python 爬虫框架设计:类封装与工程化实践
开发语言·爬虫·python
老王Bingo1 天前
Qwen Code + Chrome DevTools MCP,让爬虫、数据采集、自动化测试效率提升 100 倍
前端·爬虫·chrome devtools
小白学大数据1 天前
拼多多数据抓取:Python 爬虫中的 JS 逆向基础案例分析
开发语言·javascript·爬虫·python
道法自然|~2 天前
【PHP】简单的脚本/扫描器拦截与重要文件保护
开发语言·爬虫·php
小尘要自信2 天前
Bright Data AI Scraper Studio:企业级AI爬虫解决方案,让数据采集更智能
人工智能·爬虫·通过ai自动化爬虫·prompt生产爬虫·云端爬虫平台
失败又激情的man2 天前
爬虫逆向之观安(观镜WEB应用安全防护系统)
爬虫
小心我捶你啊2 天前
正向代理与反向代理两者的核心区别
网络·爬虫·网络协议
冰敷逆向3 天前
苏宁滑块VMP深入剖析(一):解混淆篇
javascript·爬虫·安全·web