OK, используя Python 3.4 и beautifulsoup4 на окнах 7 VM. Возникли проблемы с очисткой данных, возникающих в результате выбора с выпадающим списком. Как опыт обучения, я пытаюсь написать скребок, который может выбрать 4-летний вариант на этой странице: www.nasdaq.com/symbol/ddd/historical и распечатать строки результирующей таблицы. Пока что он просто распечатывает таблицу по умолчанию по умолчанию 3 месяца вместе с некоторым нежелательным файлом в начале, которого я не хочу. В конце концов, я хотел бы очистить эти данные и записать их в DB с помощью mysql python коннектора, но сейчас я просто хотел бы выяснить, как сделать выбор из 4-х лет в выпадающем списке. (Также, хотел бы избавиться от кодировки текста, что заставляет его быть в формате b'blahblah»Мой код до сих пор:.Скремблирование динамических веб-страниц с использованием Python 3.4 и beautifulsoup
from bs4 import BeautifulSoup
import requests
url = 'http://www.nasdaq.com/symbol/ddd/historical'
with requests.Session() as session:
session.headers = {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/40.0.2214.115 Safari/537.36'}
response = session.get(url)
soup = BeautifulSoup(response.content)
data = {
'ddlTimeFrame': '4y'
}
response = session.post(url, data=data)
soup = BeautifulSoup(response.content)
for mytable in soup.find_all('tbody'):
for trs in mytable.find_all('tr'):
tds = trs.find_all('td')
row = [elem.text.strip().encode('utf-8') for elem in tds]
print (row)
Я не получаю ошибки, но не печатает вне 4 года. Спасибо за ваше время/терпение/помощь!
Спасибо, Гайба, работал как шарм. Кроме того, если вы или кто-либо еще со временем на руках и желание помочь учащемуся, который учится, какие-либо советы по использованию коннектора python для сохранения этих данных в mysql db? СПАСИБО СНОВА, друг мой! – user3157868
Есть много учебников, как вы можете это достичь. Например здесь: http://dev.mysql.com/doc/connector-python/en/connector-python-example-connecting.html – GHajba