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

相关推荐
深蓝电商API40 分钟前
Scrapy日志系统详解与生产环境配置
爬虫·python·scrapy
海天一色y13 小时前
python--爬虫入门
爬虫
Delroy17 小时前
Vercel 凌晨突发:agent-browser 来了,减少 93% 上下文!AI 终于有了“操纵现实”的手! 🚀
人工智能·爬虫·机器学习
程序员agions20 小时前
Node.js 爬虫实战指南(三):分布式爬虫架构,让你的爬虫飞起来
分布式·爬虫·node.js
上海云盾-高防顾问1 天前
防CC攻击不止限速:智能指纹识别如何精准抵御恶意爬虫
爬虫·安全·web安全
特行独立的猫1 天前
python+Proxifier+mitmproxy实现监听本地网路所有的http请求
开发语言·爬虫·python·http
深蓝电商API1 天前
Scrapy Spider 参数化:动态传入 start_urls 和自定义设置
爬虫·python·scrapy
CCPC不拿奖不改名1 天前
基于FastAPI的API开发(爬虫的工作原理):从设计到部署详解+面试习题
爬虫·python·网络协议·tcp/ip·http·postman·fastapi
小白学大数据1 天前
某程旅行小程序爬虫技术解析与实战案例
爬虫·小程序
程序员agions1 天前
Node.js 爬虫实战指南(四):反反爬策略大全,和网站斗智斗勇
爬虫·node.js