Re: [問題] 關於網頁抓取內容

作者: qoofamily (阿祐)   2014-09-14 00:41:58
self.name.append(text)
改成
import re
self.name.append(re.sub('\n','',text))
※ 引述《jenocool ()》之銘言:
: 本來只有在寫C++,但由於有抓網頁的需求
: 看到大家推薦Python所以就嘗試看看
: 但摸了一整天其實還是不太懂
: 先附上我的程式碼
: # -*- coding: utf-8 -*-
: import urllib2
: from sgmllib import SGMLParser
: class Title(SGMLParser):
: is_a=""
: name=[]
: global getitem
: getitem = False
: def start_ol(self,attrs):
: global getitem
: getitem = True
: def start_a(self, attrs):
: global getitem
: if getitem == True:
: self.is_a = 1
: def end_a(self):
: self.is_a=""
: def end_ol(self):
: global getitem
: getitem = False
: def handle_data(self, text):
: if self.is_a and text !='庫存頁面' and text !='更多此站結果':
: self.name.append(text)
: content =
: urllib2.urlopen('https://tw.search.yahoo.com/search;_ylt=A8tUwYpDIQRU33UApv9r1gt.?fr2=time&ei=utf-8&fr=yfp&p=%E6%BD%AE%E8%82%89&btf=m').read()
: List = Title()
: List.feed(content)
: for i in List.name:
: print i.decode('utf-8')
: 目的是希望把每一篇搜尋結果的標題存起來
: 好不容易才弄到稍微想用的樣子
: 但發現如果標籤內有其他的標籤,似乎會自動換行?
: 例如原本標題:台北潮肉壽喜燒肉@*~洪小玥~*-iPeen 愛評網
: 而在Html中則是
: 台北
: <b>潮肉</b>
: 壽喜燒肉@*~洪小玥~*-iPeen 愛評網
: 所以抓出來的結果就變成
: 台北
: 潮肉
: 壽喜燒肉@*~洪小玥~*-iPeen 愛評網
: 不知道要用什麼方法將他們合併?
: 另外想請問一下,抓取GOOGLE搜尋結果似乎會有問題
: 上網查了一下似乎是有防止抓取
: 不知道有沒有什麼方法可以解決?
: 看了一整天還是一頭霧水 ..
: 謝謝大家了

Links booklink

Contact Us: admin [ a t ] ucptt.com