python 制作网站小说下载器
基本开发环境
·Python3.6
·Pycharm
相关模块使用
目标网页分析
输入想看的小说内容,点击搜索
这里会返回很多结果,我只选择第一个
网页数据是静态数据,但是要搜索,是post请求,需要提价data参数,如下图所示:
然后通过解析网站数据,获取第一个小说i的详情页url即可
静态网页的获取,难度是不大的。
defsearch():
search_url='http://www.xbiquge.la/modules/article/waps.php'
data={
'searchkey':name
}
response=requests.post(url=search_url,data=data,headers=headers)
selector=get_parsing(response.text)
novel_url=selector.css('.evena::attr(href)').extract_first()
1、获取每本小说的章节名以及url地址
所有的章节名以及url地址,都包含在dd标签里面
2、获取url后,需要拼接
'/23/23019/11409705.html'#这是网页获取到的url 'http://www.xbiquge.la/23/23019/11409705.html'#这是真实的小说章节内容url地址
3、小说名字,直接获取即可。
defdownload_one_book(index_url):
response=get_response(index_url)
response.encoding=response.apparent_encoding
sel=get_parsing(response.text)
book_name=sel.css('#infoh1::text').get()
#提取了所有章节的下载地址
urls=sel.css('#listdda::attr(href)').getall()
#不要最新的12章放在最前main
forurlinurls:
chapter_url='http://www.xbiquge.la'+url
print(chapter_url)
保存下载每章小说内容
defdownload_one_chapter(chapter_url,book_name):
response=get_response(chapter_url)
response.encoding=response.apparent_encoding
html=response.text
selector=get_parsing(html)
h1=selector.css('.booknameh1::text').get()
content=selector.css('#content::text').getall()
lines=[]
forcincontent:
lines.append(c.strip())
print(h1)
text='\n'.join(lines)
file=open(book_name+'.txt',mode='a',encoding='utf-8')
file.write(h1)
file.write('\n')
file.write(text)
file.write('\n')
file.close()
小说软件界面
root=Tk()
root.title('小说下载器')
root.geometry('560x450+400+200')
label=Label(root,text='请输入下载小说名字:',font=('华文行楷',20))
label.grid()
entry=Entry(root,font=('隶书',20))
entry.grid(row=0,column=1)
text=Listbox(root,font=('隶书',16),width=50,heigh=15)
text.grid(row=2,columnspan=2)
button1=Button(root,text='开始下载',font=('隶书',15),command=search)
button1.grid(row=3,column=0)
button2=Button(root,text='退出程序',font=('隶书',15),command=root.quit)
button2.grid(row=3,column=1)
root.mainloop()
显示下载内容
defnovel_load(title):
text.insert(END,'正在保存:{}'.format(title))
#文本框滚动
text.see(END)
#更新
text.update()
实现效果
以上就是python制作网站小说下载器的详细内容,更多关于python小说下载器的资料请关注毛票票其它相关文章!
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。