抓取NM渔猎部的报告
nmfishingreport的Python项目详细描述
NM捕鱼报告
抓取NM渔猎部报告
- 自由软件:麻省理工学院
- 文档:https://nmfishingreport.readthedocs.org
功能
- 将钓鱼报告刮入sqlite数据库
- 将指定点列表的报告写入文本文件
- 基本降价格式
- 我使用此选项将文件输出到Dropbox文件夹,以便在移动设备上轻松访问
- 监视关键字并可以选择使用自定义通知 当这些关键字出现在报表中时编写脚本
简介
NM游戏与鱼部出版a biweekly fishing report。这个 脚本将报告刮到数据库中,这样我就可以看到各个点 全年票价。它给了我一个 Pushover报告时通知 因为我最喜欢的一个地方有我选择的任何一个流行语。
依赖性
- Python3
- OS X或Linux
- 见requirements.txt
快速启动
- 复制config-sample.ini(建议:重命名为config.ini, 即.gitignored)
- 修改配置(参见下面的部分)
- pip3 install nmfishingreport
- python3 -m nmfishingreport -c/path/to/your-config.ini
开发设置
- 克隆回购协议:
git clone https://github.com/n8henrie/nmfishingreport && cd nmfishingreport
- 制作虚拟机:python3 -m venv venv
- 安装开发安装程序:venv/bin/pip install .[dev]
配置
我建议你从config-sample.ini开始。我试着加上 使其有点不言自明的评论。一些注释:
- 你需要确保你的拼写符合 fav_spots。
- 我把我的数据库文件包括在2015年的一些报告中
- 当nmdgf更新时,可能有几个漏洞 他们的网站破坏了我电脑的脚本 没有运行 如果您想继续使用我现有的数据库,请复制它 更合理的文件名(建议: fishing_reports.db,并在配置中将其用作db。
- 文件名fishing_reports.db是.gitignore-d
- 我将尝试不时更新提供的文件
通知配置
如果您了解一点python,可以选择提供一个通知 脚本,如果你想得到一个推送通知(或电子邮件或什么 当某个关键字出现在 fav_spots。文件应该公开一个空函数notify,该函数 接受两个参数:
- 包含以下键的字典:
- spot:触发通知的渔点
- report:该地点的捕鱼报告文本
- url:钓鱼报告的url
- 配置文件的路径
因为它接受配置文件的路径,所以可以将节添加到 包含通知用户名和密码的配置文件 脚本如果需要。例如,在extras/目录中 包括我的(工作的)notify.py为pushover–它拉我的pushover 来自我的配置文件的凭据,该文件不受版本控制。
预先警告nmfishingreport将通知脚本加载到 exec正在处理它的内容,我确信这可能有安全性 如果你不小心的话,可能会导致数据丢失。离开 NOTIFY节退出配置以完全避免此问题。
确认
- 游戏和鱼部!
故障排除/常见问题解答/示例
- 如何从sqlite数据库中获取信息?
- 我也不太擅长sqlite,下面是如何转换 它是一个csv文件,你可以在你的电子表格应用程序中打开 选择:
- sqlite3 -header-csv fishing_reports.db "SELECT * FROM nm_fishing_reports;" > fishingreport.csv
- 关于查看内容的其他一些想法:
- 将所有报告转储到屏幕:
- sqlite3 fishing_reports.db 'SELECT * FROM nm_fishing_reports;'
- 显示10个最新报告:
- sqlite3 fishing_reports.db 'SELECT * FROM nm_fishing_reports ORDER BY date DESC LIMIT 10;'
- 显示jemez水域的5个最新报告:
- sqlite3 fishing_reports.db 'SELECT date, report FROM nm_fishing_reports WHERE spot LIKE "%Jemez%" ORDER BY date DESC LIMIT 5;'
- 显示最近在
报告:
- sqlite3 fishing_reports.db 'SELECT date, spot FROM nm_fishing_reports WHERE report LIKE "% excellent %" ORDER BY date DESC LIMIT 1;'
- 显示一年中jemez捕鱼的“非常好”时间或
“优秀”:
- sqlite3 fishing_reports.db 'SELECT date FROM nm_fishing_reports WHERE (report LIKE "% very good %" OR report LIKE "% excellent %") AND spot LIKE "%Jemez%";'
- 将所有报告转储到屏幕:
- 如何自动运行nmfishingreport?
- 如果您使用的是OS X,我在 extras/
历史记录
0.1.0::20160613
- github/pypi上的第一个版本。