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

相关推荐
tang777891 小时前
深挖66免费代理网站:隐藏功能与真实体验报告
爬虫·python·网络爬虫·ip
电商API_180079052475 小时前
电商评论数据爬虫:情感分析与数据可视化实战
大数据·人工智能·爬虫·信息可视化·数据分析
王解5 小时前
从自然语言到爬虫工作流:深入解析 ScrapeGraphAI 的原理与架构思维
爬虫·架构·scrapegraphai
有代理ip1 天前
常见数据采集问题及实操解决方案
爬虫·网络协议·http·golang·ssl
沄媪1 天前
Libvio.link爬虫技术技术
爬虫
深蓝电商API1 天前
模拟登录状态保持:Session与Token管理
爬虫·python
码云数智-园园1 天前
互联网网站反爬虫机制探析:原理、策略与应对思路
爬虫
深蓝电商API1 天前
爬虫伦理与合法性:如何避免法律风险
爬虫
深蓝电商API2 天前
爬虫日志分析:快速定位被封原因
爬虫·python
是Dream呀2 天前
自动化打造信息影响力:用 Web Unlocker 和 n8n 打造你的自动化资讯系统
运维·前端·爬虫·自动化