08 练习小说推荐

    技术2025-02-28  13

    # Author:Nimo_Ding ''' 目标: 借助cookies的相关知识,使用Python登录小说网站,用代码的形式对热榜上的小说进行推荐。 网站地址:https://www.xslou.com/ 小说楼的排行榜页:https://www.xslou.com/top/allvisit_1/ ''' import requests from bs4 import BeautifulSoup headers = { 'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.110 Safari/537.36' } session = requests.session() def login(): login_url='https://www.xslou.com/login.php' login_data = { 'username': '***', 'password': '***', 'action': 'login' } session.post(login_url,headers=headers,data=login_data) cookies=session.cookies def stories(): stories_url='https://www.xslou.com/top/allvisit_1/' res=requests.get(stories_url,headers=headers) res.encoding='gbk' soup=BeautifulSoup(res.text,'html.parser') a=soup.find_all('ul',class_='update') books = {} for i in a: x1=i.find(class_='up2').find('a')['href'] x=''.join(list(filter(str.isdigit,x1))) # 提取链接中的数字,即id y=i.find(class_='up2').text books[x]=y return books def vote(): id=input('请输入要推荐的书籍id') vote_url = 'https://www.xslou.com/modules/article/uservote.php?'+str(id) res=session.get(vote_url,headers=headers) res.encoding='gbk' if res.status_code==200: soup=BeautifulSoup(res.text,'html.parser') print(soup.find_all('div',class_='blocktitle')[0].text) print(soup.find_all('div',class_='blockcontent')[0].text) def main(): login() print('-------请查看热门小说-------') for k,v in stories().items(): print(k,v) vote() main()

     

    Processed: 0.008, SQL: 9