我正在尝试从使用Pythons selenium的网站检索页面源代码。 但是没有收到预期的页面源,我在访问该网站时通过浏览器收到该页面源。
以下是代码的工作示例。 chromedriver
文件需要先从here下载。
from selenium import webdriver
from bs4 import BeautifulSoup
import os
import sys
reload(sys)
sys.setdefaultencoding('utf8')
def getListings(url):
chromedriver = "./chromedriver"
os.environ["webdriver.chrome.driver"] = chromedriver
driver = webdriver.Chrome(chromedriver)
driver.get(url)
source_code = driver.page_source
driver.quit()
soup = BeautifulSoup(source_code, 'html.parser')
source_code = soup.prettify()
return source_code
url = "https://www.linkedin.com/jobs/search?keywords=Software%20Developer&location=dublin%20ireland&locationId=&trk=jobs_jserp_search_button_execute&searchOrigin=JSERP"
source_code = getListings(url)
print(source_code)
访问此网站时,作业列表显示为JSON,但在获取带有source_code = driver.page_source
的页面源时,作业列表中包含HTML标记。
我不明白为什么会有区别?