2017-03-11 19 views
0

ウェブクロールを使用して株情報を取得するプログラムを作成しようとしていますが、何らかの形でプログラムがウェブページをデコードできません。私は、このコードは、これは、あなたの質問に直接答えが、提案ではないのpython 2pythonでデコードが正常に動作しない2.7

import urllib2 
import re 

stock=str(raw_input("Give the stock name")) 

url = "https://www.google.com/finance?q=" 

req = urllib2.Request(url) 
response = urllib2.urlopen(req) 
data = str(response.read()) 

data1 = data.decode('utf-8') 

print(data) 
m = re.search('meta itemprop="price"',data1) 
start = m.start() 
end = start+50 
newString = data1[start:end] 
m=re.search('content="',newString) 
start = m.end() 
newString1 = newString[start:] 
m = re.search("/",newString1) 
start=0 
end=m.end()-3 
final= newString1[0:end] 

print(final) 

答えて

0

ため、厳密になりたいです。 beautifulsoupのPythonライブラリを使ってみてください。それはあなたの質問で達成しようとしているものの大半は、すべてのPythonのバージョンと互換性がありますWebの掻きとクロールプラス他の機能とハンドルの多くの利用可能な機能を持っています。

ドキュメントについては、https://pypi.python.org/pypi/beautifulsoup4にアクセスしてください。

サンプルの例は次のとおりです。

import BeautifulSoup, urllib 

url = 'http://www.py4inf.com/code/romeo.txt' 
html = urllib.urlopen(url).read() 
soup = BeautifulSoup.BeautifulSoup(html) 
x = soup('a') 

print x 
+0

urllibはpython 2でコンパイルできません –

関連する問題