Jquery 通过http查询填写表单

Jquery 通过http查询填写表单,jquery,forms,http,ssl,web-scraping,Jquery,Forms,Http,Ssl,Web Scraping,我正在为一个客户开发一个项目,包括管理一个公司目录,到目前为止,他有几个项目,我都是从那里做的,我正在用他以前管理的信息填充cms,我需要从以前的项目中提取信息,问题是,程序的提供者不给客户端访问权限,这样我就可以获得信息。他们告诉他,他不付费,他无法获得信息。我尝试通过网络抓取来实现这一点,但在进行查询时,返回的信息始终是相同的,即程序的登录页 我的问题是: 如果通过查询,我可以填写登录表单,因为客户端有他的用户名和密码,并且以某种方式保存了会话,因此能够通过网络抓取或其他方式提取信息 或者在

我正在为一个客户开发一个项目,包括管理一个公司目录,到目前为止,他有几个项目,我都是从那里做的,我正在用他以前管理的信息填充cms,我需要从以前的项目中提取信息,问题是,程序的提供者不给客户端访问权限,这样我就可以获得信息。他们告诉他,他不付费,他无法获得信息。我尝试通过网络抓取来实现这一点,但在进行查询时,返回的信息始终是相同的,即程序的登录页

我的问题是:

如果通过查询,我可以填写登录表单,因为客户端有他的用户名和密码,并且以某种方式保存了会话,因此能够通过网络抓取或其他方式提取信息 或者在每个查询中附加用户和邮件身份验证 还有别的想法吗 以下是我希望从列表或详细url中提取信息的url:

这是我抓取网页时总是返回的结果:

我需要帮助,因为如果客户必须手工填写信息,他可能会在尝试中死亡

有什么想法吗

提前谢谢

解决了

有效的代码:

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait

option = webdriver.ChromeOptions()
option.add_argument(" - incognito")

browser = webdriver.Chrome(executable_path='/path', chrome_options=option)
browser.get('http://salamantica.com/cms/login')

timeout = 5

WebDriverWait(browser, timeout)

browser.find_element_by_id("UserUsername").send_keys("user")
browser.find_element_by_id("UserPassword").send_keys("password")
browser.find_element_by_css_selector('button[type="submit"]').click()

WebDriverWait(browser, timeout)

browser.get('http://salamantica.com/cms/categories/view/1')

WebDriverWait(browser, timeout)
information = browser.find_elements_by_class_name('controls')
[ print(content.text) for content in information ]

Selenium可以输入用户名、密码,单击提交

你以后做什么,我可以;我不知道该页面的外观,因此无法提供帮助:

from selenium import webdriver

driver = webdriver.Chrome()
driver.get('http://salamantica.com/cms/login')
driver.find_element_by_id("UserUsername").send_keys("user1234")
driver.find_element_by_id("UserPassword").send_keys("password")


driver.find_element_by_css_selector('button[type="submit"]').click()

这是否可能通过正常的web抓取实现,很大程度上取决于页面的构建方式。为了登录和访问数据,您可能不得不让phantomjs之类的东西运行页面及其javascript。感谢@KevinB提供phantomjs尝试提取信息的提示。我将尝试此解决方案并编写结果。多谢各位