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

相关推荐
3824278275 分钟前
python3网络爬虫开发实战 第2版:并发限制
开发语言·爬虫·python
我可以将你更新哟42 分钟前
【爬虫】下载ffmpeg,爬取b站视频,把音频和视频合成一个视频
爬虫·ffmpeg·音视频
胡伯来了1 小时前
08 - 数据收集 - 网页采集工具Selenium
爬虫·python·selenium·rag·网络采集
Cherry的跨界思维18 小时前
25、AI时代的数字生存战:爬虫与反爬虫的数据争夺全面解析
人工智能·爬虫·机器学习·python爬虫·python办公自动化·python反爬虫
我可以将你更新哟1 天前
【爬虫】使用协程(asyncio)爬取旁边桌面图片并存入数据
爬虫
我可以将你更新哟1 天前
【爬虫】爬取斗罗大陆漫画,面向对象封装(存入数据库)
数据库·爬虫·python
傻啦嘿哟2 天前
Docker部署Scrapy集群:爬虫容器化实战指南
爬虫·scrapy·docker
小白学大数据2 天前
利用 Selenium 与 BeautifulSoup 构建链家动态爬虫
开发语言·爬虫·selenium·beautifulsoup
李昊哲小课2 天前
简化版天气爬虫教程
爬虫·python
电商API_180079052472 天前
淘宝商品视频提取API全解析:从授权到落地实战
爬虫·python·信息可视化·数据分析·音视频