Я пытаюсь получить информацию об акциях от Yahoo Finance. Я понял, как использовать re.findall, чтобы занести цены в список. Если биржевой символ / цена не существует, я нашел способ восстановить его, сказав ['Нет такого тикерного символа']. Моя проблема в том, что мне нужно, чтобы цены и такой символ билета не были найдены в том же списке по порядку. Пока это мой код. Возможно ли иметь два шаблона в findall (), чтобы он мог поместить их в один список?
import urllib.request
import re
li = [i.strip().split() for i in open("Portfolio.txt").readlines()]
li[0:26] =[]
li = [x for x in li if x]
li.sort()
def retrieve_page(url):
my_socket = urllib.request.urlopen(url)
dta = str(my_socket.readall())
my_socket.close()
price = re.findall((r'<td class="col-price cell-raw:(.*?)"><span'), dta)
noprice = re.findall(r'<span class ="no-symbol">(.*?):<strong>', dta)
print(price)
print(noprice)
retrieve_page("http://finance.yahoo.com/quotes/AAPL,GOOG,HWP,IBM,MSFT")
Мой вывод выглядит следующим образом
['107.120003', '552.25', '164.478699', '46.0938']
['No such ticker symbol']
|
. - person anon582847382   schedule 30.10.2014