python urllib爬取百度云连接的实例代码

这里是做python urllib爬取百度云连接的完整攻略:

前置条件

在进行本操作之前,应该安装好python以及常用爬虫库requests和BeautifulSoup,并熟悉URl编码的知识。

思路

  1. 使用requests库请求百度云分享页面,获取页面HTML代码;
  2. 使用BeautifulSoup库解析HTML代码,提取百度云分享链接;
  3. 对链接进行URL编码,由于百度云分享链接可能会失效,需要将提取到的链接保存,以备后续使用。

代码实现

这里提供一个示例代码,以爬取机器学习大街的分享为例:

import requests
from bs4 import BeautifulSoup
import urllib.parse

url = 'http://www.jiqizhixin.com/share/detail/38d5fde8-2f5a-464c-9e0d-03f57088deaa'
response = requests.get(url)
html = response.text
soup = BeautifulSoup(html, 'html.parser')
links = soup.find_all('a',class_='downbtn')

for link in links:
    url = link.get('href').replace('pan.baidu.com/s/','www.baidupcs.com/rest/2.0/pcs/file')
    url = url.replace('?','&')
    url = url.replace('=','/')
    url = url + f"&method=download&access_token=null&app_id=250528"
    print(urllib.parse.quote(url,safe = "'/:&?=.,;~"))

示例说明

  1. 例一:爬取百度云中一张图片的分享链接
import requests
from bs4 import BeautifulSoup
import urllib.parse

url = 'https://pan.baidu.com/s/1IrkY2Jw2gGj6s-CL5SDQHw'
response = requests.get(url)
html = response.text
soup = BeautifulSoup(html, 'html.parser')
links = soup.find_all('a',class_='new-dbtn')

for link in links:
    url = link.get('href').replace('pan.baidu.com/s/','www.baidupcs.com/rest/2.0/pcs/file')
    url = url.replace('?','&')
    url = url.replace('=','/')
    url = url + f"&method=download&access_token=null&app_id=250528"
    print(urllib.parse.quote(url,safe = "'/:&?=.,;~"))
  1. 例二:爬取一个百度云电影的分享链接
import requests
from bs4 import BeautifulSoup
import urllib.parse

url = 'https://pan.baidu.com/s/1TTmmdmfR8dIFrw_Js98eyQ'
response = requests.get(url)
html = response.text
soup = BeautifulSoup(html, 'html.parser')
links = soup.find_all('a',class_='down-btn')

for link in links:
    url = link.get('href').replace('pan.baidu.com/s/','www.baidupcs.com/rest/2.0/pcs/file')
    url = url.replace('?','&')
    url = url.replace('=','/')
    url = url + f"&method=download&access_token=null&app_id=250528"
    print(urllib.parse.quote(url,safe = "'/:&?=.,;~"))

可以看到,在两个例子中我们都通过requests库访问了百度云的分享链接,然后使用了BeautifulSoup对获取到的HTML代码进行解析获取了分享链接,然后对分享链接进行了URL编码,实现了爬取百度云分享链接的功能。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python urllib爬取百度云连接的实例代码 - Python技术站

(0)
上一篇 2023年5月14日
下一篇 2023年5月14日

相关文章

  • Python基础之循环语句相关知识总结

    Python基础之循环语句相关知识总结 循环语句是编程中非常重要的一种语法结构,它可以让我们在代码中重复执行某段代码块,让程序具备更高的灵活性和可控性。Python中常见的循环语句有for循环和while循环。 for循环 for循环是Python中一种最常用的循环类型,它的基本语法格式如下: for var in sequence: # 这里是循环体代码块…

    python 2023年6月6日
    00
  • Python程序中用csv模块来操作csv文件的基本使用教程

    当我们需要处理一些表格数据时,CSV文件类型是应用最广泛的一种格式之一。Python中提供了CSV模块,可以方便地读写CSV文件。 1. CSV模块的介绍 CSV模块提供的函数可以帮助我们方便地处理CSV文件,将表格数据读取到Python中进行操作,也可以将外部数据保存为CSV文件。 CSV模块中常用的函数有: csv.reader(csvfile, dia…

    python 2023年6月3日
    00
  • 导入本地模块的python pytest导入模块

    【问题标题】:python pytest importing modules which import local modules导入本地模块的python pytest导入模块 【发布时间】:2023-04-05 20:34:01 【问题描述】: 我有以下python3项目结构: tests/ – testsuite_service1/ – test_ma…

    Python开发 2023年4月6日
    00
  • Python执行dos和Linux命令的方法详解

    当我们使用Python开发程序时,有时需要执行一些操作系统级别的命令,并获取命令执行的结果。比如执行一些DOS和Linux命令。那么,在Python中我们该如何执行DOS和Linux命令呢?本文将从以下几个方面详细讲解Python执行DOS和Linux命令的方法。 使用os模块 Python提供了os模块,可以很方便地执行DOS和Linux命令。 执行DOS…

    python 2023年5月20日
    00
  • python实现快速排序的示例(二分法思想)

    下面是详细讲解“Python实现快速排序的示例(二分法思想)”的完整攻略。 1. 什么是快速排序? 快速排序是一种常用的排序算法,它的基本想是通过一趟排序将待排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有都要小,然后再按照此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达整个数据变成有序序列的目的。 2. 快速排序…

    python 2023年5月14日
    00
  • (python)pmdarima.auto_arima(pyramid.auto_arima) 不会自动使用 d 和 D 参数

    【问题标题】:(python)pmdarima.auto_arima(pyramid.auto_arima) won’t use d and D args automatically(python)pmdarima.auto_arima(pyramid.auto_arima) 不会自动使用 d 和 D 参数 【发布时间】:2023-04-06 18:21:0…

    Python开发 2023年4月7日
    00
  • Python干货:分享Python绘制六种可视化图表

    Python干货:分享Python绘制六种可视化图表 本篇文章将介绍Python绘制六种常见的可视化图表,分别为折线图、散点图、直方图、条形图、饼图和热力图。其中,折线图和散点图适用于展示数值型和时间序列数据的变化趋势和分布规律;直方图和条形图适用于展示数值型数据的频数分布,两者有所差异;饼图和热力图适用于展示分类数据的占比和相关性。 折线图 折线图展示了数…

    python 2023年6月3日
    00
  • python自动化测试实例解析

    下面是关于”Python自动化测试实例解析”的完整攻略。 一、前言 Pyautogui是一款Python第三方自动化测试库,它可以模拟鼠标与键盘操作,完成GUI(Graphical User Interface图形用户界面)上的自动化测试任务。同时,Pyautogui还可以进行一定程度的图像识别,从而扩展自动化测试的范围。 二、安装pyautogui 在使用…

    python 2023年5月19日
    00
合作推广
合作推广
分享本页
返回顶部