|
|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 wongyusing 于 2017-11-6 14:49 编辑
- import re
- import os
- from urllib import request
- import urllib
- def url_open(url): #打开网页函数
- req = urllib.request.Request
- req.add_header("Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.75 Safari/537.36")
- response = urllib.request.urlopen(url)
- html = response.read()
- return html
- def chapter(url):
- html = request.url_open(url).read().decode('gbk')
- #print(html)
- reg =r'<li><a href="/cang/(.*?)">.*?</a>'#章节列表和章节url
- txt_chapter = re.findall(reg,html)
- #print(txt)
- txt_num = len(txt_chapter)
- return (txt_num)
- def book_get(chapter_url):#获取小说正文函数
- html = request.url_open(chapter_url).read().decode('gbk')
- reg = r'<div class="nr_con">(.*?)<div class="syz">'
- txtbook = re.findall(reg,html,re.S)
-
- return txtbook
- def save_txt(folder,txt_book):
- pass
- def down_gulong(folder="txt",txt_num=14): #主函数
- #主函数名称 文件名
- os.mkdir(folder)#生成工作目录
- os.chdir(folder)#改变切入工作目录
- url = 'http://www.gulongwang.com/cang/'
- txt_number = txt_num
- for i in range(txt_num):
- txt_num += i
- chapter_url = "%s%s" % (url,chapter_url)#chapter是小说正文的url
- txt_book = book_get(chapter_url)#提取正文
- save_txt(folder,txt_book)
复制代码
#代码如上,问题是,0.我该怎么写save_txt(folder,txt_book)这个函数,该如何保存成txt文件?
1. 这本小说有13章,循环是该用for 还是whlie???
#代码不知道为什么上传不了,网盘https://pan.baidu.com/s/1geLtHeF
0 学习一下open函数即可
1 for 和 while 都行
|
|