亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

python selenium webdriver 不顯示所有 html

python selenium webdriver 不顯示所有 html

白豬掌柜的 2023-08-18 17:10:12
我正在用 python 開發一個網絡爬蟲。這是我的代碼:from selenium.webdriver.chrome.options import Optionsfrom selenium import webdriverfrm bs4 import BeautifulSoupchrome_options = Options()chrome_options.add_argument("--headless")driver = webdriver.Chrome(options=chrome_options)driver.get("https://www.hapag-lloyd.com/en/home.html")source = driver.page_sourcesoup = BeautifulSoup(source, 'html.parser')print(soup)但返回的 html 與我在瀏覽器上看到的不同(請檢查最后幾行):<html><head><meta content="no-cache" http-equiv="Pragma"/><meta content="-1" http-equiv="Expires"/><meta content="no-cache" http-equiv="CacheControl"/><meta content="text/html; charset=utf-8" http-equiv="Content-Type"/><link href="data:;base64,iVBORw0KGgo=" rel="shortcut icon"/><script>(function(){window["bobcmn"] = "111110101010102000000022000000052000000002a4b927ad200000096300000000300000000300000006/TSPD/300000008TSPD_101300000005https3000000b0081ecde62cab2000d65f90c7efd5185e314a8800e00a5aad11b1a439eb174c6c3f64d45284e14d9508dcf0830d0a2800346a2db5907272d4309ad725a7dc856ab98589c10724bd284477ca152744f4ac2102b44d72e2a1e9200000000200000000";SS(RegExp("\x3c")[l(1372127,sZ)](function(){return"\x3c"})&!RegExp(l(42811,sZ))[l(1372127,sZ)](function(){return"'x3'+'d';"}));})();</script><script src="/TSPD/081ecde62cab200082f75af3905bec19af31f4aaf7bd4079c3ac5a62a6fb4096cfcec166097ddde7?type=7" type="text/javascript"></script><noscript>Please enable JavaScript to view the page content.<br/>Your support ID is: 17324345507588527622.</noscript></head><body><form action="" enctype="multipart/form-data" method="post"><input name="_pd" type="hidden" value=""/></form></body></html>它報告“請啟用 JavaScript 以查看頁面內容。您的支持 ID 是:17324345507588527622。”。我查了一些其他人發起的查詢。這個問題應該通過使用chrome來解決。我還嘗試使用 requests-html 獲取 html。但程序只是繼續運行并且不返回任何東西。
查看完整描述

1 回答

?
侃侃爾雅

TA貢獻1801條經驗 獲得超16個贊

這是 page_source 方法的限制。

并查看源代碼:

從接口復制的描述:WebDriver 獲取最后加載頁面的源。如果頁面在加載后被修改(例如,通過 Javascript),則不能保證返回的文本是修改后的頁面的文本。請查閱所使用的特定驅動程序的文檔,以確定返回的文本是否反映了頁面的當前狀態或 Web 服務器上次發送的文本。返回的頁面源是底層 DOM 的表示:不要期望它以與 Web 服務器發送的響應相同的方式進行格式化或轉義。將其視為藝術家的印象。


查看完整回答
反對 回復 2023-08-18
  • 1 回答
  • 0 關注
  • 244 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號