python抓取js,使用Python抓取JS表单

我目前正在进行一个研究项目,我们试图从巴西Hemeroteca数据库中收集保存的图像文件。在使用HTML表单使用C/C++之前,我已经在PHP页面上进行了Web删除,但是由于这是一个共享脚本,所以我需要切换到Python,这样组中的每个人都可以使用这个工具。在

有三种形式,第一种是报纸/杂志。选择此选项后,将填充可用时间,最后一个字段是搜索项。我在这里检查了HTML页面,它们的三个id分别是:“periodicmb1_Input”、“periodicmb1_Input”和“PesquisaTxt1”。在

一些关于这个主题的google搜索让我找到了Selenium包,我把这个示例代码组合在一起,试图阅读这个页面:import webbrowser

import requests

from selenium import webdriver

from selenium.webdriver.common.keys import Keys

from selenium import webdriver

from selenium.webdriver.support.wait import WebDriverWait

from selenium.webdriver.support import expected_conditions as EC

from selenium.webdriver.common.by import By

import time

print("Begin...")

browser = webdriver.Chrome()

url = "http://bndigital.bn.gov.br/hemeroteca-digital/"

browser.get(url)

print("Waiting to load page... (Delay 3 seconds)")

time.sleep(3)

print("Searching for elements")

journal = browser.find_element_by_id("PeriodicoCmb1_Input")

timeRange = browser.find_element_by_id("PeriodoCmb1_Input")

searchTerm = browser.find_element_by_id("PesquisaTxt1")

print(journal)

print("Set fields, delay 3 seconds between input")

search_journal = "Relatorios dos Presidentes dos Estados Brasileiros (BA)"

search_timeRange = "1890 - 1899"

search_text = "Milho"

journal.send_keys(search_journal)

time.sleep(3)

timeRange.send_keys(search_timeRange)

time.sleep(3)

searchTerm.send_keys(search_text)

print("Perform search")

submitButton = button.find_element_by_id("PesquisarBtn1_input")

submitButton.click()

脚本运行到print(journal)语句,在该语句中抛出错误,说明找不到元素。在

有人能快速浏览一下有问题的页面,确保我正确地理解了这个脚本的基本前提,或者给我指出一些例子来帮助我解决这个问题吗?在

谢谢!在

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值