1这个是用BS爬下来的,其实是不难的,理解了就好,点击这里恩这本小说很不错的
2看下这个就是用正则表达式来提取的章节链接,不过这个是要前面加上前缀
3打开之后,我使用BS处理的,因为这个处理这个内容中间的Br比较方便,如果还是用正则表达式,就是有点麻烦
# coding:utf-8 import urllib import re from bs4 import BeautifulSoup#是用BS和正则表达式爬取小说 url='http://www.biquge.tw/0_5/' page=urllib.urlopen(url) html=page.read() rez=r'<dd> <a style="" href="(/0_5/\d{4,}.html)">.*?</a></dd>'#观察到完美世界笔趣阁网站的目录上的每个章节的链接 zz=re.compile(rez) DZg=re.findall(zz,html) # w=open('dazhuzai.text','w') for z in DZg:#用for循环来逐个提取章节链接 x=0 x+=1 list=['http://www.biquge.tw']hh='http://www.biquge.tw'+z#把这个提取的链接完善下来 page = urllib.urlopen(hh)html = page.read()soup=BeautifulSoup(html,"html.parser")data=soup.find_all("div",class_="bookname")#这个时候BS的实用就表现出来了。他能很容易的提取出来标签内的文本 w=open("wanmei.text",'a+')for i in data :w.write(i.find("h1").get_text().encode('utf-8')+'\n')#写入其中的章节名字然后转一下码 text = soup.find_all("div",id="content")for item in text:w.write(item.get_text(strip=True).encode('utf-8')+'\n')#记住用哪个(strip=True)来把这个其中多余的部分来剔除掉 w.close()然后看下运行结果: