python 爬取文章

这里我们利用强大的python爬虫来爬取一篇文章。仅仅做一个示范,更高级的用法还要大家自己实践。

好了,这里就不啰嗦了,找到一篇文章的url地址:http://www.duanwenxue.com/article/673911.html

(注意,有一些网站会做一些反爬处理,关于这些网站的爬取会在近期的文章中说明)

这是一篇散文,)

 <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> 可知网页的编码方式为GB2312

但在解码是要decode(’GB18030‘),

具体说明:http://www.cnblogs.com/jjj-fly/p/6696523.html

下面开始实现代码:

 
 1 #coding=GB18030
 2 import urllib.request
 3 from bs4 import BeautifulSoup
 4 import re
 5 
 6 url="http://www.duanwenxue.com/article/673911.html"
 7 a=urllib.request.urlopen(url)
 8 
 9 htmlstr=a.read().decode('GB18030')
10 
11 soup=BeautifulSoup(htmlstr,'html.parser')
12 
13 y=re.compile(r'<p>([sS]*?)</p>')
14 text=y.findall(str(soup))      #第一次正则表达式筛选所有<p></p>中的内容
15 
16 x=''
17 print(len(text))
18 for i in range(0,len(text)):
19     x=x+text[i]
20 
21 text1=re.sub("</?w+[^>]*>",'',x)  #去掉html标签
22 
23 text2=text1.replace("",'')  #让文本更好看
24 print(text2)

 输出结果

 over!

参考:http://www.cnblogs.com/jjj-fly/p/6901022.html

原文地址:https://www.cnblogs.com/jjj-fly/p/6696484.html