pyppeteer的问题

本身这个项目是非官方的,是基于谷歌官方puppeteer的python版本。
本来chrome就问题多多,puppeteer也是各种坑,加上pyppeteer是前两者的python版本,也就是产生了只要前两个有一个有bug,那么pyppeteer就会原封不动的继承下来,本来这没什么,但是现在遇到的问题就是pyppeteer这个项目从18年9月份之后就没更新过了,前两者都在不断的更新迭代,而pyppeteer一直不更新,导致很多bug根本没人修复。

遇到的错误:

  1. pyppeteer.errors.NetworkError: Protocol error Network.getCookies: Target close
    控制访问指定url之后await page.goto(url),会遇到上面的错误,如果这时候使用了sleep之类的延时也会出现这个错误或者类似的time out。
    这个问题是puppeteer的bug,但是对方已经修复了,而pyppeteer迟迟没更新,就只能靠自己了,搜了很多人的文章,例如:https://github.com/miyakogi/pyppeteer/issues/171 ,但是我按照这个并没有成功。
    也有人增加一个函数:
async def scroll_page(page):cur_dist = 0height = await page.evaluate("() => document.body.scrollHeight")while True:if cur_dist < height:await page.evaluate("window.scrollBy(0, 500);")await asyncio.sleep(0.1)cur_dist += 500else:break

但是我调用这个参数依然没解决问题。
后来有人说可以把python第三方库websockets版本7.0改为6.0就可以了,亲测可用。

pip uninstall websockets #卸载websockets
pip install websockets==6.0 #指定安装6.0版本

2. chromium浏览器多开页面卡死问题
解决这个问题的方法就是浏览器初始化的时候添加’dumpio’:True。至于什么原理我也不知道,只是添加上了。

3. 浏览器窗口很大,内容显示很小
上面的问题是需要设置浏览器显示大小,默认就是无法正常显示。

可以看到gmail页面只在左侧显示,右侧都是空白,网站内容并没有完整铺满chromium,底部横向滚动条拖拽还很不方便。

browser = await launch({'headless': False,'dumpio':True, 'autoClose':False,'args': ['--no-sandbox', '--window-size=1366,850']})
await page.setViewport({'width':1366,'height':768})

通过上面设置Windows-size和Viewport大小来实现网页完整显示。

本文由三分醉博客原创,转载请注明:pyppeteer使用遇到的bug及解决方法 – 三分醉博客
文章同步更新在知乎:https://www.zhihu.com/people/sanfenzui

whitelabel error page怎么解决_pyppeteer使用遇到的bug及解决方法相关推荐

  1. SameSite Cookie问题处理解决方案(谷歌Chome浏览器出现Whitelabel Error Page或者不停请求现象解决)

    谷歌Chrome浏览器出现Whitelabel Error Page或者不停请求现象的解决: 在浏览器地址栏中输入chrome://flags/ 并打开,将如下选项禁用: SameSite by de ...

  2. 解决Whitelabel Error Page最简单的方式

    在我使用springboot的时候,将程序运行但是没有办法利用localhost:8080 查看已经编写好的静态页面 但是当我们输入http://localhost:8080/pages/user/r ...

  3. “Whitelabel Error Page“解决方法

    做项目时 测试Swagger2 时候输入网址出现 "Whitelabel Error Page" 项目测试 突然出现"Whitelabel Error Page" ...

  4. Spring boot Whitelabel Error Page解决方法(弱鸡方法,非全部适用)

    Spring boot Whitelabel Error Page解决方法(弱鸡方法,非全部适用) springboot版本:2.0.1 我是在设置自定义的错误页面时报了空白页错误,结果最后发现,我把 ...

  5. 解决:Whitelabel Error Page This application has no explicit mapping for /error...UnknownHostException

    前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. 1. 我的情况 : springcloud 实践,启动 ribbon 工程后,请求接口报错: Whi ...

  6. whitelabel error page漏洞及解决

    whitelabel error page漏洞成因,正常情况下访问/article并输入数字型id即可获取文章内容,但如果传入了spel表达式,则会导致转到错误页面同时对spel表达式内容进行解析并反 ...

  7. 关于“Whitelabel Error Page”问题的解决

    一.问题描述 访问spring boot项目templates目录下的资源会报"Whitelabel Error Page",因此资源无法访问.一般出现这个问题的原因要么是路径不对 ...

  8. SpringBoot报错Unsatisfied dependency expressed through field userMapper和Whitelabel Error Page解决方案

    搜索下面的错误信息得到解决方法 Unsatisfied dependency expressed through field 'userMapper' 项目结构如下 解决办法 在启动类中加入注解 里面 ...

  9. SpringBoot Whitelabel Error Page的根本原因,三种解决方案以及其特点

    原文地址:https://www.jianshu.com/p/b06584591086 0.简述 在学习这个学习笔记之前最好能够对spring mvc以及Tomcat有些了解,这样理解起来更加方便,如 ...

最新文章

  1. 服务器性能好的笔记本电脑,2020高性价比笔记本推荐-1万以上笔记本电脑排行
  2. MongDB-副本集搭建【MongDB系列一】
  3. MVC开发Markdown编辑器(1)
  4. 网络营销外包浅析网络营销外包中网站排名效果不佳的原因有哪些?
  5. 深入解析C++编程中的静态成员函数
  6. 批处理--创建当前日期的文件夹
  7. java天气app_MVP+RxJava2+Retrofit2 实况天气app
  8. 栈和队列之生成窗口最大值数组
  9. 网络编程模型综述 之 UNIX网络I/O模型
  10. 坑爹的uint32_t
  11. Leetcode 206.反转链表(双指针迭代法和递归操作)
  12. 知道答案吗?知道为什么是这个答案吗?
  13. .Net应用程序打包部署总结
  14. 高三了,一模距本科线还差22,英语才28,怎么办啊
  15. 误删除分区下的数据恢复
  16. 验证码功能-简单实现
  17. Java错误:找不到或无法加载主类
  18. java后台通过http请求下载文件
  19. Flash cs3简单的动画制作
  20. django自带的权限管理Permission用法

热门文章

  1. 本页不但包含安全的内容,也包含不安全的内容
  2. linux之at,crontab
  3. 处理动态SQL语句的参数
  4. JMeter使用jar进行压力测试
  5. spring REST中的内容协商(同一资源,多种展现:xml,json,html)
  6. mysql 相关记录
  7. 微软程序分析tcp 之服务端
  8. (八)2005年我的第一次软件行业创业,烧掉30万、2年时间打水漂的惨痛教训
  9. Golang zip 压缩与解压
  10. Linux 命令(0)—— man 命令