phantomjs+python截图乱码及其截图分辨率的解决办法
来源:互联网 发布:php hub 编辑:程序博客网 时间:2024/06/05 17:34
本来在centos上用的好好的python+selenium+phantomjs,需要搬迁到ubuntu上面。
搭环境的时候确实比较容易踩着坑,搞了半天终于全装上了。
跑一下吧,然后发现截图怎么分辨率这么低,而且汉字全是小框框。
查了下,应该是没有安装字体
在centos中执行: yum install bitmap-fonts bitmap-fonts-cjk
在ubuntu中执行: sudo apt-get install xfonts-wqy
ubuntu亲测可行,而且安装的很干脆,没出现什么别的幺蛾子。
然后开始解决分辨率的问题,明明已经是maximize_window()了啊,为毛还是这么小,而且在centos上没问题,我一直认为是系统的差异导致的,找了半天ubuntu和phantomjs之间的问题。
然而老大说是分辨率,让我去查查,还真的是。其实和大牛的差距就是能够准确的定位问题。。。
搞了一圈,发现python的木有
driver = webdriver.PhantomJS('phantomjs') driver.viewportSize={'width':1024,'height':800} #重要这句!driver.maximize_window()driver.get('http://www.baidu.com')
后面我就不写了,加上定义分辨率的语句果然截图是我期待的。
你可以试试调节参数,来模拟手机上,平板上的显示效果。
2017.4.21
哈哈哈,搞到centos这坑里了。
自带2.6的python ,截图都是方框,这问题轻车熟路,装字体。
再截图,汉字是正常了,一些数字“10分钟”的10不显示。百度也百度的不到,都是众所周知的上面安装字体。
于是我开始分析。
放到另一台centos上截图没问题。那么看看phantomjs的版本一致么 phantomjs -v
都是2.1.1
看看python版本不一致升级python 2.7
然后升级了一个2.7.3,不行,再换了一个小版本号,跟另一台机器一致2.7.11.
还是他妈的不行,草。
然后我仔细对比两个截图,发现这个汉字的字体还真的有点点不一样呢。。。
想着看看字体吧。
主要ttf文件存储在 /usr/share/fonts/
然后我进去一看才两种字体,我又去另一台截图正常的机器去看,结果尼玛20多种字体。。。
全部copy 过来,管他的
中间还看到有个类似 /usr/share/fontconfig
看名字像是配置文件,也不能放过。全部copy过来。
运行,截图,好了。白白浪费我2小时升级乱七八糟的东西。
百度不到的话,还是结合现象好好分析,刚开始是怨我瞎,我服。。。
参考资料
[1]http://blog.sina.com.cn/s/blog_736f1c5901013g94.html
- phantomjs+python截图乱码及其截图分辨率的解决办法
- Phantomjs截图乱码
- phantomjs截图的实践
- phantomjs 抓取、截图中文网站乱码的问题的解决
- phantomjs 抓取、截图中文网站乱码的问题的解决
- phantomjs 抓取、截图中文网站乱码的问题的解决
- 分享基于phantomjs的web截图
- phantomjs对页面的某个div截图
- php phantomjs 网页截图
- phantomjs设置截图大小
- PhantomJS网页截图
- phantomjs设置截图大小
- phantomjs截图中文网站网页页面乱码,安装字体解决
- phantomjs截图中文网站网页页面乱码,安装字体解决
- 利用PhantomJS 自动截图Kibana ,python发送网站运营日报
- phantomjs + casperjs 抓取网页截图
- 网页截图方案selenium/phantomjs
- phantomjs网页局部div截图
- iOS 3DTouch 在现实当中的应用
- jstl中fn表达式的应用
- 微信小程序开发之图片等比例缩放 获取屏幕尺寸图片尺寸 自适应
- javaweb Struts的中央控制器
- 品牌案例|全球支付软件PayPal的界面ui设计
- phantomjs+python截图乱码及其截图分辨率的解决办法
- java-多态
- JQuery Ajax动态加载Table数据
- Mac下安装ANT
- 第十六周项目1(6)——基数排序
- 学习python(1)——环境与常识
- 项目管理---git----快速使用git笔记(七)------coding.net项目管理多人操作的流程规范--合并代码审核
- 第十五周 字符串分段
- iOS根据银行卡号识别银行