当前位置: 首页 > news >正文

张家界建设网站门户网站的建设原理

张家界建设网站,门户网站的建设原理,广州市最新消息,呼和浩特做网站哪家好最近遇到了一个问题#xff0c;因为一些原因#xff0c;我搭建的一个 Superset 的 Report 功能由于节假日期间不好控制邮件的发送#xff0c;所以急需一个方案来替换掉 Superset 的 Report 功能 首先我们需要 Chrome 浏览器和 Chrome Driver#xff0c;这是执行数据抓取的… 最近遇到了一个问题因为一些原因我搭建的一个 Superset 的 Report 功能由于节假日期间不好控制邮件的发送所以急需一个方案来替换掉 Superset 的 Report 功能 首先我们需要 Chrome 浏览器和 Chrome Driver这是执行数据抓取的基石 Selenium 是一个用于自动化 Web 应用程序测试的工具它可以帮助模拟用户在浏览器中的操作如点击、输入文本、提交表单等 这样我们就可以通过网页的验证并进入 Superset 进行我们需要的截图了 1. 安装 1.1 在服务器安装Chrome wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb apt install -y google-chrome-stable_current_amd64.deb google-chrome --version1.2 在服务器端安装Chrome Drive 在 这里可以查看你安装的stable版与对应的驱动, 上面查看版本可以看到我安装了132.0.6834.83版本所以对应地我需要下图中的版本。 wget https://storage.googleapis.com/chrome-for-testing-public/132.0.6834.83/linux64/chromedriver-linux64.zip unzip chromedriver-linux64.zip cp chromedriver-linux64/chromedriver /usr/bin/.1.3 安装字体针对中文网站 在 这里 下载微软雅黑ttf格式字体。 将字体上传到服务器上接着执行 mkdir -p /usr/share/fonts/chinese/ cp 微软雅黑.ttf /usr/share/fonts/chinese/ cd /usr/share/fonts/chinese/ fc-cache -fv fc-list :langzh也可只针对单用户 mkdir -p ~/.fonts cp 微软雅黑.ttf ~/.fonts fc-cache -fv fc-list :langzh2. 使用Selenium 没有安装 Selenium 的话先使用pip安装 然后加载 driver from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.chrome.options import Options from selenium.webdriver.common.keys import Keys如果是按照上面的流程安装的最新版的驱动的情况下 使用下面一行即可加载驱动 driver webdriver.Chrome()如果安装的 Chrome 或者驱动较老则可以尝试使用如下方式加载驱动 options Options() options.add_argument(--no-sandbox) # Avoid using the sandbox mode options.add_argument(--headless) # Run Chrome in headless mode options.add_argument(--single-process) options.add_argument(--window-size1920,1080) driver webdriver.Chrome(optionsoptions)2.1 确定登录所需信息 由于我们需要对私域网站截图所以第一步需要先使用账号密码登录网站 Selenium 可以帮我们模拟输入文本和点击但是前提需要我们找到输入框的所在位置以及登录按钮所在的位置 由于在这里的id和class是唯一的 所以我们可以使用 By.ID 和 By.CSS_SELECTOR 选择器直接选择 username_field driver.find_element(By.ID, username) password_field driver.find_element(By.ID, password) button driver.find_element(By.CSS_SELECTOR, input.btn.btn-primary.btn-block)2.2 输入信息并点击登录 # 输入账户密码登录 import timeusername_field.send_keys(username) password_field.send_keys(password) button.click() time.sleep(3) # 等待登陆等待时间视实际响应时间为准2.3 根据需求截图并保存 在输入想截图的网站的网址后我们可以选择只登录或者登录并跳转。以某dashboard为例子下面演示登录并跳转到某dashboard截图的例子 # 加载我们想加载的页面 driver.get(url) time.sleep(15) # 等待页面加载完全可以根据网页加载速度调整等待时间 width driver.execute_script(return document.documentElement.scrollWidth) height driver.execute_script(return document.documentElement.scrollHeight) driver.set_window_size(width, height) driver.save_screenshot(save_path) driver.quit()上面的例子会动态根据长宽进行长截图如果页面的长宽是确定的话可以像下面一样执行 driver.set_window_size(1920, 1080)3. 结语 最后使用Selenium截图的效果还是非常不错的当然前提是要保证对网站的访问是顺畅的建议同服务器通过 127.0.0.1 访问会更加顺畅和稳定否则可能会丢失信息或者干脆无响应 上面的实现思路对公域网站明显是可以直接适用的其它私域网站参考 2.1 跳转到确定登录所需信息 修改后也仍适用
http://www.w-s-a.com/news/97636/

相关文章:

  • 企业通用网站模板湖南网站建设企业
  • 能看网站的视频app如何运行asp网站
  • 公司做网站还是做阿里好呢国外的旅游网站做的如何
  • 怎么做wep网站长沙seo排名公司
  • 海南网站网络推广做转运网站
  • 门户网站方案用户等待网站速度
  • 哈尔滨专业建网站方案深圳生活免费信息网
  • 检测网站是否被挂黑链wordpress 网址分享
  • 网站建设贵阳东莞网站建设策划
  • 网站5建设需要学什么桃城网站建设公司
  • 杭州外贸网站企业门户网站的安全性
  • 建设论坛网站需要做什么水果电商网站建设相关文献
  • 群晖 nas 做网站建设网站的报价
  • 白山做网站网站建设 app 优化
  • 畜牧业网站建设官方网站下载拼多多app
  • 网站规划和布局备案网站地址
  • 站长工具流量统计招工信息发布平台
  • 上海网站建设公司排行建设无障碍网站
  • phpcms网站打不开网页制作网站设计稿
  • 博客网站开发环境wordpress 中英文双语
  • 做网站报价表群辉装wordpress
  • 请人做游戏的网站视觉设计师的工作内容
  • 昆明网站建设知名企业博客网站开发
  • 如何做网站网页免费thinkphp网站后台模板
  • 怎么自己做优惠券网站济南小程序开发
  • 南昌网站专业制作做仿站如何获取网站源码
  • qq钓鱼网站wordpress 企业站模板
  • 推进文明网站建设免费设计公司logo设计
  • 做电脑租赁网站server 2008 网站部署
  • 做网站的公司一年能赚多少钱wordpress作者增加分类插件