我想使用Selenium和python获取使用“ post”方法的信息

时间:2018-06-20 11:51:35

标签: python python-3.x scrapy

我想使用硒和python在example1的黑框内获取名为“投资金额”和“投资数量”的信息,其请求方法为“发布”。我的代码如下,即再次关闭。需要您的帮助!

from selenium import webdriver
from bs4 import BeautifulSoup
browser = webdriver.Chrome()
browser.get("https://www.pedata.cn/invest_count/list.html")
html = browser.page_source
soup = BeautifulSoup(html, 'html.parser')
invest = soup.find('div', 'tj_chart').find('div')
print(invest.string)

1 个答案:

答案 0 :(得分:0)

在此网站中,数据未嵌入html页面中,而是通过Javascript从另一个API(POST https://www.pedata.cn/ajax/invest_count/list)加载的。获取图表中所有数据的最简单方法是直接调用该API,而不是等待JS加载数据:

import requests

response = requests.post(
    'https://www.pedata.cn/ajax/invest_count/list',
    data = {
        'investStart': '',
        'investEnd': '',
        'x': 1,
        'currency': '',
        'month': '',
        'round': '',
        'investStage': '',
        'investType': '',
        'investTime': '',
        'xType': '',
        'city': '',
        'industry': ''
    }
)

print(response.json()['data'])