3
我希望能夠製作評論用戶列表,但在使用BeautifulSoup進行拉取時無法在頁面上找到iframe。評論是在iframe中,由於某些原因,當我用BeautifulSoup拉動html時,似乎並沒有iframe。我知道有一個持有評論的iframe,因爲我查看了網頁上的html,以便嘗試深入研究並使用BeautifulSoup提取我需要的內容。我可以用BeautifulSoup在javascript後面獲得一個iframe嗎?
from bs4 import BeautifulSoup
from urllib import urlopen
url = urlopen("http://www.datpiff.com/Curreny-Alchemist-Carrollton-Heist-mixtape.766213.html")
bsObj = BeautifulSoup(url,"html.parser")
frame_list = bsObj.findAll("iframe")
for frame in frame_list:
print(frame)
不過,我發現這個JavaScript可能的答案,我需要什麼,但我想問問,我是想在爲了某種方式運行此JavaScript的服務器保存此頁相信我是一個用戶,然後iframe出現?
<script language="javascript">
var disqus_shortname = 'datpiff4';
/* * * DON'T EDIT BELOW THIS LINE * * */
(function() {
var s = document.createElement('script'); s.async = true;
s.type = 'text/javascript';
s.src = '//' + disqus_shortname + '.disqus.com/count.js';
(document.getElementsByTagName('HEAD')[0] || document.getElementsByTagName('BODY')[0]).appendChild(s);
}());
</script>
我希望能夠得到這個iframe中,而無需打開使用硒時就像一個瀏覽器。這可能嗎?如果不是,除了BeautifulSoup以外,我還能用什麼來做這件事?
感謝您的回覆!那麼我怎樣才能到達iframe呢?我不應該使用BeautifulSoup嗎?如果是這樣,我應該使用什麼? – ImNotBot
要獲得iframe,您應該在執行JS後獲取呈現的頁面 - 這裏是與答案相同的問題:http://stackoverflow.com/questions/7064109/how-to-parse-html-that-includes-javascript-代碼http://stackoverflow.com/questions/11047348/is-this-possible-to-load-the-page-after-the-javascript-execute-using-python –
謝謝,但我已經看到了這些網頁。我可能不得不改變我的問題。我可以在不使用硒打開網絡瀏覽器的情況下訪問iframe嗎?如果可能的話,我真的想要擺脫硒。 – ImNotBot