Python搭建BT资源搜索站(五)

通过前面四篇文章,我们已经采集到了N多BT种子,并且已经将种子中包含的一些信息保存在Mongo数据库中,接下来就是如何将Mongo中的数据通过WEB服务器提供给搜索引擎,提供给一些浏览者。即,如何使用Python搭建一个WEB站点了。

首先我之前的项目均采用Bottle这个Python框架,这次依然不例外。这个框架的好处只有一个:足够简单。

使用Bottle启动一个Web Server是一件非常简单的事,文件保存成app.py:

from bottle import Bottle, run

app = Bottle()

if __name__ == "__main__":

#命令行交互模式

import sys

port = int(sys.argv[1] if len(sys.argv) > 1 else 8888)

run(app, host='0.0.0.0', port=port, reloader=True)

当然bottle.py这个文件需要从官方下载到当前目录,这样才可以正常import。

执行脚本python app.py启动了Web Server后,默认的端口号为8888,但此时在浏览器输入http://localhost:8888会返回一个“Not found: '/'”的404错误。这是因为咱们只是启动了一个空白的Web Server,但没有设置对应的Url route。

设置一个经典的首页显示Hello world的route:

from bottle import Bottle, run

app = Bottle()

@app.get('/')

def index():

return 'Hello world'

if __name__ == "__main__":

# Interactive mode

import sys

port = int(sys.argv[1] if len(sys.argv) > 1 else 8888)

run(app, host='0.0.0.0', port=port, reloader=True)

这时候再执行python app.py,在浏览器访问http://localhost:8888/就可以看到『Hello world』的字样了。

已有12条评论 »

  1. Normal prinze generic buy viagra reviews Smooth It shine can you order viagra online then small for any.

  2. Hr, cialis online pharmacy for a patient with HBP , Gerd , Bph .

  3. 随风而行

    还有吗?

  4. tim

    求问https://github.com/shispt/dht/issuesDHT部分如何启动,如何管理?谢谢

  5. 这种方式倒是没试过。。

  6. 学习了不错

  7. 你好,我想请教下python-libtorrent是如何获取torrage的种子信息的?torrage的种子都是gzip压缩过的,我写了py脚本提取其它种子的信息无错误,唯独torrage的种子会提示bencodingerror.

  8. 看了你的教程我也做了一个磁链转bt和bt转磁链的程序,搜索更能还在研究中

  9. 有试过libtorrent直接下载种子文件,速度和从cacheserver上下载不是一个量级。最后还是使用cacheserver下载来的快,毕竟能从DHT收到的info_hash的请求资源实在太多了

  10. eric

    能否直接从node上下载torrent文件,而不用通过torrent的cacheserver上下载呢?

  11. 能整理成现成的程序,多好

  12. 博主,搜索DHT网络这种方式如何实现呢。小弟学艺不精,实在看不懂网络上的协议。能否指点一下呢:)

添加新评论 »