可以配合python的beautifulsoup4库对页面进行解析,如果在服务器上运行要注意服务器上有没有安装对应的字体(被字体的问题坑过)
关于字体问题可以看下面这个链接:
CentOs下载中文字体https://blog.csdn.net/lspjuzi/article/details/135625073?spm=1001.2014.3001.5501
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
import time
def get_push():
# 设置Chrome浏览器的选项,启用无头模式(不显示浏览器窗口)
chrome_options = Options()
chrome_options.add_argument("--headless")
chrome_options.add_argument("no-sandbox")
chrome_options.add_argument("--disable-extensions")
# 创建Chrome浏览器对象
browser = webdriver.Chrome(options=chrome_options)
try:
# 访问目标网站
browser.get('http://www.baidu.com')
# 等待JavaScript加载完成,可以根据实际情况调整等待时间
# time.sleep(18)
# 获取状态码
status_code = browser.execute_script("return window.performance.getEntries()[0].responseStatus")
# 获取html
page_html = browser.page_source
return status_code, page_html
except Exception as e:
print(f"Exception: {e}")
return None
finally:
# 关闭浏览器
browser.quit()
if __name__ == '__main__':
max_retries = 5
retry_count = 0
while retry_count < max_retries:
web_data = get_push()
status_code = web_data[0]
if status_code == 200:
page_html = web_data[1]
print("Success! :", page_html)
break
else:
retry_count += 1
print(f"Retry {retry_count}/{max_retries}. Waiting for 10 seconds before retrying...")
time.sleep(10)
版权归原作者 lspjuzi 所有, 如有侵权,请联系我们删除。