Используется этот учебник, чтобы скоблить цены на акции: https://www.youtube.com/watch?v=f2h41uEi0xUЦены на акции не скребковые с Python
Есть некоторые подобные вопросы, но я хочу знать, как исправить этот текущий код (для учебных целей), где они просто работают.
Web scraping information other than price from Yahoo Finance in Python 3
Using Regex to get multiple data on single line by scraping stocks from yahoo
Я понимаю, что есть лучшие способы сделать это, однако эти видео полезно узнать.
Все работает, но оно не восстанавливает цены с сайта! У меня есть точный код, который у него есть. Я использую Python Launcher (Mac) 2.7 (также попытался 3.4) для запуска программы python.
Вот мой код:
import urllib
import re
symbolslist = ["aapl", "spy", "goog", "nflx"]
i=0
while i<len(symbolslist):
url = "http://finance.yahoo.com/q?s=" +symbolslist[i] +"&q1=1"
htmlfile = urllib.urlopen(url)
htmltext = htmlfile.read()
regex = '<span id ="yfs_l84_'+symbolslist[i] +'">(.+?)</span>'
pattern = re.compile(regex)
price = re.findall(pattern,htmltext)
print "the price of" , symbolslist[i], " is " ,price
i+=1
Если вы собираетесь узнать вас, а может узнать правильный путь, разбор HTML с регулярным выражением не является хорошей идеей –
Вы также можете перемещаться по элементам symbolslist непосредственно, используя диапазон является излишним. 'для i в символьном списке', тогда просто используйте i вместо' symbollist [i] ' –
@PadraicCunningham. В моем ответе были оба из этих точек, lol – heinst