From 9b56f514cf0b59b636bd61fd31ff77333ebc62ff Mon Sep 17 00:00:00 2001 From: LibraHp_0928 <1941163264@qq.com> Date: Tue, 10 Sep 2024 15:37:41 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E8=8E=B7=E5=8F=96=E8=AF=B4?= =?UTF-8?q?=E8=AF=B4=E6=97=B6=E4=B8=AD=E9=80=94=E9=80=80=E5=87=BA=E7=9A=84?= =?UTF-8?q?bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 3 +++ main.py | 25 +++++++++++++++++++------ 2 files changed, 22 insertions(+), 6 deletions(-) create mode 100644 .gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..8cdc60e --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +/resource/ +.idea +/myenv/ diff --git a/main.py b/main.py index 1314649..c92506e 100644 --- a/main.py +++ b/main.py @@ -239,11 +239,23 @@ def get_message(start, count): g_tk, ], } - response = requests.get('https://user.qzone.qq.com/proxy/domain/ic2.qzone.qq.com/cgi-bin/feeds/feeds2_html_pav_all', - params=params, cookies=cookies, headers=headers) + + try: + response = requests.get( + 'https://user.qzone.qq.com/proxy/domain/ic2.qzone.qq.com/cgi-bin/feeds/feeds2_html_pav_all', + params=params, + cookies=cookies, + headers=headers, + timeout=(5, 10) # 设置连接超时为5秒,读取超时为10秒 + ) + except requests.Timeout: + print("请求超时") + return None + return response + def get_login_user_info(): response = requests.get('https://r.qzone.qq.com/fcg-bin/cgi_get_portrait.fcg?g_tk=' + str(g_tk) + '&uins=' + uin, headers=headers, cookies=cookies) @@ -319,20 +331,21 @@ if __name__ == '__main__': for i in trange(int(count / 100) + 1, desc='Progress', unit='100条'): message = get_message(i * 100, 100).content.decode('utf-8') + time.sleep(0.2) html = process_old_html(message) if "li" not in html: - break + continue soup = BeautifulSoup(html, 'html.parser') for element in soup.find_all('li', class_='f-single f-s-s'): - time = None + put_time = None text = None time_element = element.find('div', class_='info-detail') text_element = element.find('p', class_='txt-box-title ellipsis-one') if time_element is not None and text_element is not None: - time = time_element.get_text().replace('\xa0', ' ') + put_time = time_element.get_text().replace('\xa0', ' ') text = text_element.get_text().replace('\xa0', ' ') if text not in [sublist[1] for sublist in texts]: - texts.append([time, text]) + texts.append([put_time, text]) if len(texts) > 0: save_data()