卓越飞翔博客卓越飞翔博客

卓越飞翔 - 您值得收藏的技术分享站
技术文章11201本站已运行3223

Python 百度网盘链接失效检测

昨晚我一个朋友发了个游戏链接给我,一个excel文件,有上千个游戏,我随便点击了几个,发现都失效了,为了不做重复工作,
因此今天写了一个python脚本,我搜了一下论坛发现没有人写过这个玩意,如果有相同类似的,请管理员删除我这个帖子

主要功能:使用selenium自动化工具检测百度网盘链接是否失效

import requests
from selenium import webdriver
from selenium.webdriver.common.by import By
import time
 
# 该程序适用于检验多个网盘链接的有没有失效
 
# 设置Edge浏览器驱动程序路径
driver_path = ''
 
# 启动Edge浏览器
driver = webdriver.Edge(executable_path=driver_path)
 
def checklink(linkList:dict):
    for link,code in linkList.items():
        try:
            req=requests.get(link)
            if '百度网盘-链接不存在' in req.text:
                print('百度网盘文件不存在或百度链接已失效')
                return False
        except Exception as e:
            print(f'百度网盘链接访问失败:{e}')
            return False
        # 在当前浏览器会话中加载网页
        driver.get(link)
        # 找到提取码输入框
        passwd_input = driver.find_element(By.ID, 'accessCode')
        # 输入提取码
        passwd_input.send_keys(code)
        # 找到提交按钮并点击
        submit_button = driver.find_element(By.ID, 'submitBtn')
        # 模拟点击按钮  
        submit_button.submit()
        # 延时两秒等待网页加载完成
        time.sleep(2)
        # 获取输入提取码后返回的title来判断网盘里面是否存在文件
        result=driver.title
        if '链接不存在' in result:
            print('百度网盘文件不存在或百度链接已失效')
            return False
        else:
            print('百度网盘文件有效')
            return True
    # 关闭浏览器
    driver.quit()
 
if __name__=='__main__':
    checklink({})
有人说直接用requests库可以直接判断,但是我考虑到还有一些网盘链接需要提取码,才能进入分享页面查看是否有没有文件存在,我遇到过需要输入提取码,但是里面的文件是没有的情况
卓越飞翔博客
上一篇: C&C++ 开源SKRoot-Linux内核级完美隐藏ROOT系统源码
下一篇: 自动下载百度贴吧图片的PHP脚本
留言与评论(共有 0 条评论)
   
验证码:
隐藏边栏