各位程序员们,为什么?
```python
from time import sleep
from pyquery import PyQuery
from urllib.parse import urljoin
from datetime import datetime, timedelta
import sys
from json import load
from requests import get
from multiprocessing import Pool
url = 'https://fanqienovel.com/page/7381439840480414744'
now_time = datetime.now()
with open('update_time.txt', encoding='utf-8') as f:
update_date = datetime.strptime(f.read(), '%Y-%m-%d')
if now_time > update_date:
need_to_update = True
else:
need_to_update = False
if not need_to_update:
sys.exit()
doc = PyQuery(url=url)
chapter_list = []
with open('chapter.txt', 'w', encoding='utf-8') as f:
for chapter in doc('div.chapter>div.chapter-item').items():
chapter_name = chapter.find('a').text()
chapter_list.append(urljoin(url,
chapter.find('a').attr('href')))
f.write(f'{chapter_name}\n')
with open('update_time.txt', 'w', encoding='utf-8') as f2:
f2.write((now_time.date()+timedelta(days=1)).isoformat())
dit_data = load(open('dit_date.json', encoding='utf-8'))
headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",
"Cookie": "s_v_web_id=verify_lyjwpr6f_HxLaVVd4_rNvo_4RVS_862h_Op4pNZVE1XgG; novel_web_id=7391045291653596699; Hm_lvt_2667d29c8e792e6fa9182c20a3013175=1720861840,1720867345,1720916404; Hm_lpvt_2667d29c8e792e6fa9182c20a3013175=1720916404; HMACCOUNT=BB23AAA9886B8449; csrf_session_id=a47081fce4500af10bd601ab2cabb201; ttwid=1%7C9xskUQxHEZnJhPUbkDSob-NDi1QUaP5MrDgezlPFbac%7C1720916404%7C3c972415ea84add6a07ca9205da5c86b3cd4c1dbce4a3b2ac1c30277860ef068; msToken=4dpC_NUFyMZjF3_P7bhww1Hcw2_FaIPwkTOpDs_UqGaTHUOiPDUT10tGY7i-YQPW1HiEZF0-oksu-mvt_BHvb6G6r7g5z2GBVo2yXRoTxLJ0sY1Tb0WI"
}
def write_chapter_to_files(chapter_list_index):
chapter_files_name = f'C:/Users/13802/Desktop/小说/第{chapter_list_index + 1}章.txt'
with open(chapter_files_name, 'w', encoding='utf-8') as f:
chapter_url = chapter_list[chapter_list_index]
doc = PyQuery(get(chapter_url, headers=headers).content.decode('utf-8'))
for p in doc('div.muye-reader-content.noselect p').items():
f.write(' ') # muye-reader-content noselect
for word in p.text():
try:
word = dit_data[str(ord(word))]
f.write(word)
# print(word)
except:
f.write(word)
# print(word)
f.write('\n\n')
print(f'爬完{chapter_files_name}')
sleep(0.5)
if __name__ == '__main__':
pool = Pool()
pool.map(write_chapter_to_files, range(len(chapter_list)))
pool.close()
pool.join()
调试后发现在·map卡住了,无反应,不报错, 不结束。
神奇的是,注释掉这行又ok了!
```python
# with open('update_time.txt', 'w', encoding='utf-8') as f2:
# f2.write((now_time.date()+timedelta(days=1)).isoformat())
这个程序只是我无聊时·写的,可能极不规范。各位请不要喷
说以为什么,这真的对我很重要。
谢谢