从网站下载接吻日志的简单模块。

smooch-logs的Python项目详细描述


接吻日志下载器

PyPI versionPyPI licensePyPI pyversionsPyPI statusPyPI download total

这是一个从他们的网站下载接吻日志的简单模块。 我们使用Selenium和Chromium无头浏览器获得Smooch的登录凭证。在

安装

pipenv install smooch_logs

使用

CLI

您可以使用smooch_logs.downloader脚本从thr CLI直接下载Smooch日志。在

^{pr2}$

例如,要下载过去3天内所有应用程序的日志

python -m smooch_logs.downloader --start `date --utc --iso-8601 --date="3 days ago"` -o last_3_days.json

模块

importloggingfromsmooch_logsimportSmoochWebSessionfromsmooch_logsimportSmoochLogsDownloaderfromsmooch_logsimportSMOOCH_BASE_URLlogger=logging.getLogger(__name__)withSmoochWebSession()assession:r=session.get(f'{SMOOCH_BASE_URL}/webapi/apps?limit=999')r.raise_for_status()app_ids=[d['_id']fordinr.json()['apps']]logger.info(f'Found {len(app_ids)} Smooch applications.')downloader=SmoochLogsDownloader(session)forapp_idinapp_ids:r=session.get(f'{SMOOCH_BASE_URL}/webapi/apps/{app_id}')r.raise_for_status()logger.info(f'Downloading logs for "{r.json()["name"]}" <{app_id}> from Smooch.')foreventindownloader.download(app_id,start=A.start,end=A.end):print(json.dumps(event))#end for#end for#end with

^{}设置Selenium web驱动程序并需要基于web的操作来从Smooch获得sessionId。 在开发过程中,可以通过以下方式为Smooch会话指定现有会话ID

SmoochWebSession(session_id='xxx',logout=False)

^{}对象自动检查会话有效性,必要时重新登录。在

^{}是一个方便的类,用于下载特定应用程序的Smooch日志。在

码头工人

此存储库中包含的Dockerfile包含运行Python下载脚本所需的内容。 它目前为所有Smooch应用程序提供了一个shell script to download the last 3 days of logs,并将它们保存到环境变量OUTPUT_URI中指定的URI中。 这是目前作者在日常工作中用来下载日志的。 可以根据您的用例进行必要的修改。在

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java错误:无法解析方法   如何用相同的父标记和子标记在Java中解析XML?   日期使用Java中的时区偏移将本地时间转换为UTC   java如何在多进程、多线程环境中读取文件   WebView中的java弹出式对话框不在当前显示范围内,但在chrome浏览器中运行良好   只有2个参数的java递归二进制搜索方法   无法在java中调用函数   java JavaMail在Tomcat服务器上运行时停止工作   反射通过java程序生成、编译和运行java类   java Android:如何使ListView即使在应用程序关闭后仍保持禁用状态   在JAVA中识别匿名类实例   java渲染一个由三角形组成的立方体,在旋转时会产生奇怪的角度   函数式编程如何基于比较连续的列表元素将Java流减少为布尔值   java如何替换列表中的多个项目?   java Android如何获取随机sqlite数据?   java我已经将useSSL设置为false,但仍然收到警告   java使用动态变量生成jlabel   apachespark:java。lang.NoClassDefFoundError v2TableWithV1回退