自動抓取163新聞的Python爬蟲源碼

Python爬蟲的學習,自動抓取163新聞的Python爬蟲源碼,這是一個用Python語言編寫的,自動抓取網易新聞的python爬蟲實現方法一文。

Python爬蟲的抓取思路是:
(1)經過分析目標新聞網址 ,分析其中以News.xxx.com 開頭的連接
(2)獲取每個連接的內容,並作整理合併到事前準備好的.txt 文本中,以便查看各新聞。
可是須要注意的是:因爲今天的測試對象,網易新聞的格式不是很是統一,全部會有部分漏掉的狀況,還能你們見諒。也但願有能力的朋友們幫着改進一下。html

自動抓取163新聞的Python爬蟲源碼以下:python

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#coding:utf-8
 
import re, urllib
 
strTitle = ""
strTxtTmp = ""
strTxtOK = ""
 
f = open ( "163News.txt" , "w+" )
 
m = re.findall(r "news\.163\.com/\d.+?<\/a>" ,urllib.urlopen( "http://www.163.com" ).read(),re.M)
 
#www.iplaypy.com
 
for i in m:
testUrl = i.split( '"')[0]
if testUrl[-4:-1]=="htm":
 
 
strTitle = strTitle + "\n" + i.split('"' )[ 0 ] + i.split( '"')[1]  # 合併標題頭內容
 
okUrl = i.split('"' )[ 0 ] # 從新組合連接
UrlNews = ''
UrlNews = "http://" + okUrl
 
print UrlNews
 
"""
查找分析連接裏面的正文內容,可是因爲 163 新聞的格式不是很是統一,因此只能說大部分能夠。
整理去掉部分 html 代碼,讓文本更易於觀看。
"""
n = re.findall(r "

(.*?)<\/P>",urllib.urlopen(UrlNews).read(),re.M)python爬蟲

for j in n:
if len (j)<> 0 :
j = j.replace( " " , "\n" )
j = j.replace( "" , "\n_____" )
j = j.replace( " " , "_____\n" )
strTxtTmp = strTxtTmp + j + "\n"
strTxtTmp = re.sub(r "" , r"", strTxtTmp)
 
 
 
 
 

文章代碼實效性有限,還請適當作修改後再使用。dom

相關文章
相關標籤/搜索