测试wenku8连通

This commit is contained in:
SlyAimer 2025-02-15 17:38:08 +08:00
parent d9ac65928c
commit e7db5f75e2

View file

@ -87,15 +87,19 @@ async def bot_on_ready():
import requests import requests
from requests.adapters import HTTPAdapter
from intake.readers import Retry
from src.configs.api_config import wenku8_username, wenku8_password from src.configs.api_config import wenku8_username, wenku8_password
# 登录页面的URL # 登录页面的URL
login_url = 'https://www.wenku8.net/login.php?jumpurl=http%3A%2F%2Fwww.wenku8.net%2Findex.php' login_url = 'https://www.wenku8.net/login.php?jumpurl=http%3A%2F%2Fwww.wenku8.net%2Findex.php'
index_url = 'https://www.wenku8.net/index.php' index_url = 'https://www.wenku8.net/index.php'
headers = { headers = {
'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7',
'Accept-Language': 'zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2', 'Accept-Language': 'zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2',
'Connection': 'close', 'Connection': 'keep-alive',
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/111.0.0.0 Safari/537.36 Edg/111.0.1661.41', 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/111.0.0.0 Safari/537.36 Edg/111.0.1661.41',
'Upgrade-Insecure-Requests': '1',
} }
# 登录表单数据 # 登录表单数据
@ -105,13 +109,33 @@ login_data = {
'usecookie': '0', 'usecookie': '0',
'action': 'login' 'action': 'login'
} }
wenku8 = on_command("wenku8", rule=to_me(), priority=10, block=True) wenku8 = on_command("wenku8", rule=to_me(), priority=10, block=True)
@wenku8.handle() @wenku8.handle()
async def wenku8(): async def wenku8():
# 注意这里使用了Session对象来保持会话状态 # 创建会话
login_response = requests.post(login_url, data=login_data, headers=headers) session = requests.Session()
# 检查登录是否成功(根据实际需求调整)
if login_response.status_code == 200: # 重试策略
# 登录成功后Session对象已经自动保存了Cookie retry_strategy = Retry(
# 可以直接使用该Session对象访问受保护的页面 total=3,
print("登录成功!") backoff_factor=1,
status_forcelist=[500, 502, 503, 504],
allowed_methods=["POST"]
)
adapter = HTTPAdapter(max_retries=retry_strategy)
session.mount('https://', adapter)
session.mount('http://', adapter)
try:
# 发送登录请求
login_response = session.post(login_url, data=login_data, headers=headers)
# 检查登录是否成功(根据实际需求调整)
if login_response.status_code == 200:
# 登录成功后Session对象已经自动保存了Cookie
# 可以直接使用该Session对象访问受保护的页面
print("登录成功!")
else:
print(f"登录失败,状态码: {login_response.status_code}")
except requests.exceptions.RequestException as e:
print(f"请求出错: {e}")