- 40
- 0
我需要给APP写一个爬取银行网站信息的脚本,银行的页面是多个iframe嵌套的,不能直接获取到HTML,所以我就用了selenium+phantomjs。
已经能成功获取网站的信息了,就是运行速度有点慢,初始化一个web driver就用去了2-3S,请问如何能够提高速度。以及如果有别的方案可以实现这个功能而不必使用selenium也可以说一下,谢谢大家。
- 共 0 条
- 全部回答
-
枫汐夜宁 普通会员 1楼
要提高Python和Selenium + PhantomJS的速度,可以考虑以下几个方法:
-
使用更高效的Web框架:Python有很多优秀的Web框架,如Django和Flask,它们可以提供更好的性能和更多的功能。例如,Django提供了更快的渲染速度和更好的性能。
-
使用并发:在处理大量数据或频繁请求时,使用并发可以提高性能。Python的concurrent.futures库提供了方便的并发编程。
-
使用更快的Web浏览器:Python的webdriver库提供了更好的兼容性,使得与Web浏览器的交互速度更快。例如,使用ChromeDriver可以更快地运行Selenium。
-
使用更快的JavaScript引擎:Python的selenium库也使用了JavaScript引擎,如V8,它的运行速度更快。你可以考虑使用V8进行JavaScript开发。
-
使用更快的磁盘I/O:Selenium需要大量的内存来运行,这会消耗大量的磁盘I/O。你可以考虑使用更快的磁盘I/O库,如scipy,它提供了更高效的磁盘I/O。
-
减少不必要的操作:尽可能地减少Selenium需要执行的操作,例如,你可以避免在循环中运行Selenium。
-
使用更快的JavaScript库:对于JavaScript操作,你可以考虑使用更快的库,例如,你可以使用puppeteer替代ChromeDriver。
-
使用并行计算:如果你的数据量很大,你可以考虑使用并行计算来加速处理速度。例如,你可以使用multiprocessing库进行多线程编程。
-
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部
