|
15鱼币
本帖最后由 大马强 于 2021-4-19 00:46 编辑
已经爬取到文本所在点我url,但是却是乱码,用了百度上的方法还是处理不了
代码奉上
- # 爬取 https://boxnovel.baidu.com/ 的小说西游记
- # 发起请求,拿到页面的html代码
- # 从上面的html的源代码中找到不同章节的url
- # 对上面的拿到url发起请求去获得数据
- # 对数据进行永久化保存
- import requests
- # 抓包过程中发现 参数 pageNum 的值是变化的 为【1,2,3】
- # 使用循环来将本书章节的包全部爬到,发起请求
- # https: // novelapi.baidu.com/novelopenapi/legal/content?app_code = wise_novel & sign = 5eebc17759205623c5aa3b4e61bec1df & time = 1618747010621 & book_id = 4306063500 & chapter_id = 11348571
- for pagenum in range(1, 4):
- book_url = f"https://boxnovel.baidu.com/boxnovel/wiseapi/chapterList?bookid=4306063500&pageNum={pagenum}&order=asc&site="
- book_html = requests.get(book_url)
- for each in book_html.json()['data']["chapter"]["chapterInfo"]:
- c_id = each["chapter_id"]
- title = each["chapter_title"] # 取得c_jd
- chapter_url = f"https://novelapi.baidu.com/novelopenapi/legal/content?app_code=wise_novel&sign=5eebc17759205623c5aa3b4e61bec1df&time=1618747010621&book_id=4306063500&chapter_id={c_id}"
- chapter_html = requests.get(chapter_url)
- try:
- text_url = chapter_html.json()['data']['url'] #请求小说文本所在URL
- except:
- PASS
- else:
- text = requests.get(text_url)
- print(text.text)
复制代码
我觉得那个小说的文本应该就在这里,但是我还是无法将它处理,求求大佬指点
|
|