Данные пропущены в запросах.get () Python 2 - PullRequest
0 голосов
/ 31 мая 2018

Я хочу создать консенсусную цену IAA по https://www.settrade.com/AnalystConsensus/C04_10_stock_saa_p1.jsp?txtSymbol=PTT&ssoPageId=9&selectPage=10

В элементах проверки Google Chrome я могу использовать <h3> через Beautifulsoup для получения данных.Но из печати page.content я получаю

...
<h3 class="colorGreen"></h3>
...

Где это должно быть <h3 class="colorGreen">62.00</h3>

Вот мой код

import requests
from bs4 import BeautifulSoup

def findPrice(Quote):
    link = "http://www.settrade.com/AnalystConsensus/C04_10_stock_saa_p1.jsp?txtSymbol="+Quote+"&ssoPageId=9&selectPage=10"
    page = requests.get(link)
    soup = BeautifulSoup(page.content,'html.parser')

    print page.content
    target = soup.findAll('h3')
    return target.string

findPrice('PTT')

1 Ответ

0 голосов
/ 31 мая 2018

Полагаю, сервер проверяет наличие файла cookie LstQtLst и генерирует HTML с заполненной «Целевой ценой консенсуса».

import requests
from bs4 import BeautifulSoup


def find_price(quote):
    link = ('http://www.settrade.com/AnalystConsensus/C04_10_stock_saa_p1.jsp'
            '?txtSymbol={}'
            '&ssoPageId=9'
            '&selectPage=10'.format(quote))

    html = requests.get(link, cookies={'LstQtLst': quote}).text
    soup = BeautifulSoup(html, 'html.parser')

    price = soup.find('h3').string
    return price
>>> find_price('PTT')
62.00
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...