# 使用提醒:
# 1. xbot包提供软件自动化、数据表格、Excel、日志、AI等功能
# 2. package包提供访问当前应用数据的功能,如获取元素、访问全局变量、获取资源文件等功能
# 3. 当此模块作为流程独立运行时执行main函数
# 4. 可视化流程中可以通过"调用模块"的指令使用此模块
import xbot
import xbot_extensions
from xbot import print, sleep
from .import package
from .package import variables as glv
import requests
import threading
import re
import os
"使用请求获取图片列表(用正则提取)"
def get_img_data(url):
headers = {
"Referer":"https://shop.yingdao.com/fun/emoji-game",
"Sec-Ch-Ua":'Not/A)Brand";v="8", "Chromium";v="126", "Microsoft Edge";v="126',
"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36 Edg/126.0.0.0"
}
response = requests.get(url=url,headers=headers)
if response.status_code == 200:
pattern = r'basicData:(\[.*?\])'
match = re.search(pattern, response.text, re.DOTALL)
if match:
basic_data_str = match.group(1)
basic_data_list = eval(basic_data_str)
return basic_data_list
else:
print("No match found")
else:
print("请求失败,状态码:", response.status_code)
"下载图片函数"
def down_img(url,folder):
response = requests.get(url)
if response.status_code == 200:
with open(os.path.join(folder,url.split("/")[-1]), 'wb') as f:
f.write(response.content)
print(f"下载成功:{url}")
else:
print(f"下载失败:{url}")
"创建多线程下载图片"
def down_imgs(img_data, folder):
threads = []
for url in img_data:
t = threading.Thread(target=down_img, args=(url, folder))
threads.append(t)
t.start()
for t in threads:
t.join()
"调用"
def main(args):
folder = "C:/Users/zongdao25/Desktop/影刀IMG"
if not os.path.exists(folder):
os.makedirs(folder)
data_img_list = get_img_data("https://shop.yingdao.com/js/chunk-1c1ed5b4.d437737b.js")
down_imgs(data_img_list, folder)
pass
记录——影刀RPA,EXCEL嵌入HTTP下载的图片
于 2024-09-09 13:02:27 首次发布