python + selenium + phantomjs 截图
1、phantomjs下载地址http://phantomjs.org/download.html
2、windows上使用下载即可用,linux上需要安装【bitmap-fonts bitmap-fonts-cjk】否则截取的图中不显示中文
linux中不显示中文即没有安装相应的字体,我们安装字体即可:
在centos中执行:yum install bitmap-fonts bitmap-fonts-cjk
在ubuntu中执行:sudo apt-get install xfonts-wqy
3、截图代码 - python
import time
from selenium import webdriver
from settings.config import EXECUTABLE_PATH
import warnings
warnings.simplefilter("ignore")
def screen_shot(link, save_path):
# EXECUTABLE_PATH是PhantomJS的下载存放的路径,根据你自身下载PhantomJS的地方去定
browser = webdriver.PhantomJS(executable_path=EXECUTABLE_PATH)
#browser = webdriver.Chrome(executable_path=EXECUTABLE_PATH) chrome驱动
browser.maximize_window()
browser.get(link)
# browser.find_element(By.ID, 'headPart').screenshot(f'{path}.png')
flag = browser.get_screenshot_as_file(save_path)
browser.quit()
return flag
if __name__ == '__main__':
# 需要截图的url
url = "http://jyzx.xiangyang.gov.cn/jyxx/gcjs/zbjggg/202112/t20211230_2680240.shtml"
# 截图后需要存储的路径
path = r"D:\project\python_project\myproject\JFa_ggzy\666.png"
fla, e = screen_shot(link=url, save_path=path)
4、补充:下载chrome驱动
安装chromedriver驱动
首先,我们需要查看自己的谷歌浏览器版本,在搜索框输入chrome://version/
随后,进入网站https://registry.npmmirror.com/binary.html?path=chromedriver/选择对应版本的驱动下载就好了。