2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > python资源百度云_Python Selenium 百度云分享链接资源 批量保存

python资源百度云_Python Selenium 百度云分享链接资源 批量保存

时间:2022-06-07 06:56:02

相关推荐

python资源百度云_Python Selenium 百度云分享链接资源 批量保存

[Python] 纯文本查看 复制代码# -*- coding: UTF-8 -*-

from docx import Document #安装 pip install python-docx

import re

from selenium import webdriver

from mon.exceptions import NoSuchElementException

import time

# 凡是出现sleep的,都是因为网络等原因加载过慢,需要等一等

# 登录云盘

def login(driver,username,password):

orgin_url = '/'

driver.get(orgin_url)

try:

time.sleep(5)

elem_static = driver.find_element_by_id("TANGRAM__PSP_4__footerULoginBtn")

elem_static.click()

time.sleep(0.5)

elem_username = driver.find_element_by_id("TANGRAM__PSP_4__userName")

elem_username.clear()

elem_username.send_keys(username)

elem_userpas = driver.find_element_by_id("TANGRAM__PSP_4__password")

elem_userpas.clear()

elem_userpas.send_keys(password)

elem_submit = driver.find_element_by_id("TANGRAM__PSP_4__submit")

elem_submit.click()

time.sleep(5)

except NoSuchElementException:

pass

# 将加密分享的文件保存到自己云盘的目录下

def extract(driver,srcurl,srcpwd):

driver.get(srcurl)

try:

getpwd = driver.find_element_by_id("mwxxPOD") #("esDEV5")

getpwd.send_keys(srcpwd)

getButton = driver.find_element_by_link_text("提取文件")

getButton.click()

time.sleep(10)

# 目前有两种情况

# 一:分享文件是一压缩包

# 二:分享的是一路径

try:# 全选(情况二)

selectall = driver.find_element_by_class_name("zbyDdwb")

selectall.click()

except NoSuchElementException:

file_name = "no_zbyDdwb.png"

driver.save_screenshot(file_name)

driver.get_screenshot_as_file(file_name)

pass

savetodisk = driver.find_element_by_link_text("保存到网盘")

savetodisk.click()

time.sleep(5)

# AA 为指定的自己网盘保存路径

selectdir = driver.find_element_by_xpath("//span[@node-path='/AA']")

selectdir.click()

enter = driver.find_element_by_link_text("确定")

enter.click()

time.sleep(2)

except NoSuchElementException:

file_name = "no_such_element.png"

driver.get_screenshot_as_file(file_name)

pass

def read_docx(path):

fulltext=[]

list1=[]

listUrl=[]

listpwd=[]

#生成word对象,并指向word文件

doc=Document(path)

#读取对象的全部内容,不包括图片和表格

paras=doc.paragraphs

#将每行数据存入列表

for p in paras:

fulltext.append(p.text)

for i, element in enumerate(fulltext):

if element.find("https:")!=-1:

list1.append(i)

for j in range(len(list1)):

k =list1[j]

link = re.findall(r'.*(https.*)',fulltext[k].replace(u"\xa0",u"").replace(" ",""))

listUrl.append(link[0])

pwd = re.findall('[a-zA-Z0-9]{4}',fulltext[k+1])

listpwd.append(pwd[0])

#print(len(listUrl),len(listpwd))

return listUrl,listpwd

# 调用执行

def doWork():

# 存放链接的文件

path=r'文件地址***.docx'

listUrl,listpwd= read_docx(path)

driver = webdriver.Chrome(executable_path='D:\Program10\python37\chromedriver\chromedriver')

login(driver,"网盘帐户名***","密码***")

for index in range(len(listUrl)):

srcurl = listUrl[index]

srcpwd = listpwd[index]

extract(driver,srcurl,srcpwd)

driver.quit()

if __name__ == '__main__':

doWork()

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。