我不确定如何正确描述问题,但无论如何, 所以我想使用mechanize来获取表单并获取输入的名称。 但是,当我使用mechanize进行解析时,它不会显示表单名称和输入名称。 如果我通过查看网站手动尝试,我必须检查元素,以便我可以得到输入名称,但仍然是动态的,所以每次检查元素时,它都给我不同的名称。任何的想法? 顺便说一下,如果有兴趣的话,我试图解析的网站是https://www.ursa.ucla.edu/logon/logon.asp。
这是我尝试过的:
br = mechanize.Browser(factory=mechanize.RobustFactory())
br.open("https://www.ursa.ucla.edu/logon/logon.asp/")
br.select_form(nr=0)
print br.response().read()
先谢谢, 理查德。
答案 0 :(得分:1)
您无法直接访问您尝试解析的网页。 当您访问https://www.ursa.ucla.edu/logon/logon.asp时,它将执行以下操作:
现在我不知道python如何处理重定向标头。您可能需要查看您获得的响应。在最好的情况下,它将是隐藏变量的最后一页,您需要解析这些并将POST请求发送到同一个URL以获取真正的登录页面。在最坏的情况下,您需要从第一页开始一直关注标题。