获取隐藏的输入字段,甚至无法使用selenium和BeautifulSoup获取页面源

时间:2017-06-07 14:54:03

标签: python asp.net selenium web-scraping beautifulsoup

我正在尝试获取页面源代码。所以,我可以使用post请求进行查询并从结果中检索数据。但是,最初我甚至不能获得页面来源。

from selenium import webdriver
from bs4 import BeautifulSoup

browser=webdriver.Firefox()

browser.get('url.aspx')

soup=BeautifulSoup(browser.page_source)


print soup.prettify()

我正在关注页面来源:

...
</script>
  <noscript>
   Please enable JavaScript to view the page content.
  </noscript>
 </head>
 <body onload="challenge()">
  <form action="/corpweb/CorpSearch/CorpSearch.aspx" method="POST">
   <input name="TS019ab495_id" type="hidden" value="3"/>
   <input name="TS019ab495_cr" type="hidden" 
value="c4fb95a11ceaf83e82fc10400957ab7c:yvyz:a9qeoPYm:1996871542"/>
   <input name="TS019ab495_76" type="hidden" value="0"/>
   <input name="TS019ab495_md" type="hidden" value="1"/>
   <input name="TS019ab495_rf" type="hidden" value="0"/>
   <input name="TS019ab495_ct" type="hidden" value="0"/>
   <input name="TS019ab495_pd" type="hidden" value="0"/>
  </form>
 </body>
</html>

2 个答案:

答案 0 :(得分:1)

index.html

试试这个,希望它能解决javascript问题

答案 1 :(得分:0)

<noscript>
Please enable JavaScript to view the page content.
</noscript>

这将是一个挑战: https://www.quora.com/Can-beautifulsoup-scrape-javascript-rendered-webpages

在我过去,我在Perl中编写蜘蛛做了很多工作,如果我们想要的内容是由javascript创建的,javascript总是一个挑战。我们必须使用某种第三方工具来读取/渲染/输出javascript到html文件,然后只需导入该数据进行解析。

上面的链接有一些工具可以解决这个问题。祝你好运!