没有项目描述

freebora的Python项目详细描述


header.png

这是一个下载不同类别的免费O'Reilly电子书的工具, 见http://shop.oreilly.com/category/ebooks.do

这不是故意使用scrapy(部分是为了避免配置错误) 分两个阶段实施:

  1. 爬行O'Reilly在线商店以编译PDF文件的URL列表 下载,然后
  2. 正在从1中创建的列表中下载所有文件。

步骤1是按顺序完成的(目前),而步骤2可以选择 在使用“requests”和“aiohttp”的顺序和并行版本之间, 分别是。

请参阅中的文件session1.txtsession2.txtsession3.txtdocs/sessions文件夹,用于一些不同大小的用例。

安装

您可以使用一个简单的pip install freebora从 python包索引,或者在从 github并在其根目录中运行python3 setup.py install。 目前,它只适用于python 3。

测试

您可以像这样运行(非常小的)测试套件:

# using py.test (needs a pip install pytest):
py.test -v tests

# using a minified version of py.test, included in runtests.py:
python3 setup.py test

个别测试可以如下运行:

py.test -s tests/test_oreilly_shop.py

待办事项

  • 添加异步版本的函数以收集URL(上面的步骤1)
  • 改进命令行界面
  • 添加不仅可下载PDF,还可下载其他格式的功能
  • 添加功能以交互方式选择要下载的单个电子书

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

推荐PyPI第三方库


热门话题
java如何使用Ibatis在插入时返回ID(使用返回关键字)   java(org.hibernate.TransactionException)org。冬眠TransactionException:事务未成功启动   java小程序jwindow始终位于JNLP顶部   在Java中重新解析JSON对象?   java单击后将ListView数据移动到新屏幕   Mule ESB中的java WSA寻址特性   Java,对象编程:获取返回0值的方法   hibernate的Java通用问题,如何处理T get(K id)   java在使用超级CSV读取CSV时忽略引用   ssh使用Java远程运行命令   java如何向具体用户发送websocket消息?   在JAVA中,我可以在不指定的情况下使用条件运算符吗?