Skip to content

Navigation Menu

Sign in
Sign up
dmf-code edited this page May 13, 2020 · 4 revisions

这是一个通过配置自动化操作的框架,它效率不会很高,但是可以解决一些痛点:

  1. 重复性的浏览器操作(苹果自动化出包流程)
  2. 爬虫(实现爬取使用异步渲染 dom 结构的页面)

框架最大的特点,也是我最喜欢的是:代码完全可以通过配置化进行操作,这样子就能解决页面 DOM 结构经常变化导致爬取出错修复慢的问题。

使用说明:

titan.yml 文件是框架的配置文件

development: //定义环境
 debug: True //打开调试模式
 headless: False //浏览器是否开启无头模式
 browser_args: [ //浏览器配置参数
 '--disable-infobars',
 '--no-sandbox',
 '--disable-gpu',
 '--ignore-certificate-errors',
 '--ignore-ssl-errors',
 '--window-size=1980,1000',
 '--disk-cache-size=10485760',
 'blink-settings=imagesEnabled=false'
 ]
 experimental_option: { // 扩展参数
 prefs: {
 },
 excludeSwitches: ['enable-automation']
 }
 callback: { //执行完成的回调
 default: 'file', // 默认文件
 stores: { // 回调的存储方法
 file: {
 name: 'boss.txt'
 },
 request: { // 请求后台
 url: 'http://127.0.0.1:5000/tasks/'
 }
 }
 }
 load_command_from_file: True // 加载执行命令,是本地还是后台数据库加载
production:
 debug: False
 headless: True
 browser_args: [
 '--no-sandbox',
 '--disable-gpu',
 ]
 hub: [http://127.0.0.1, http://127.0.0.1]

项目 README.md 中也有 boss 的例子,可以结合起来一起理解。

这个框架所做的事情都是封装官方的方法的,所以对于组件使用不清楚的话,就要看一下官方的文档了。

https://www.selenium.dev/documentation/zh-cn/

组件文档可能没有做到非常详细或是表达不清楚的问题,这里面可以直接看组件代码,这里面会清晰的知道具体需要什么参数。

Clone this wiki locally

AltStyle によって変換されたページ (->オリジナル) /