如何创建调用 python 网络抓取脚本的网络服务?
How to create a web service who calls a python web scraping script?
我是 python 初学者,我需要一些帮助来创建调用 python 网络抓取脚本的网络服务(课程任务)。
我可以使用 Bottle 创建 Web 服务。我想使用 static_file 调用脚本,但我不确定,因为文档说 static_file 用于 CSS.
想法是先创建网络服务,然后使用服务器上的网络抓取脚本。
感谢哥伦比亚的帮助和问候!
P.S。我的英语不是很好,但我希望有人能理解我并帮助我。
你可以试试我找到的这个指南:
http://docs.python-guide.org/en/latest/scenarios/scrape/
对于 xpath 的东西,我建议使用带有 "Firebug" 插件的 Mozilla Firefox。它可以为您生成 xpath,这将帮助您更快地编写脚本
- 除非它已经在一个函数中,否则请编辑您的抓取脚本,以便您的代码包含在一个函数中,该函数 returns 您想要的任何信息。它应该像缩进所有未缩进的内容并添加
def main():
一样简单
- 假设您的脚本名为 scraper.py,它与您的瓶子控制器一起位于控制器文件的顶部,添加一个
import scraper
.
- 在您的回调中,您可以调用
scraper.main()
(不知道为什么粘贴这里的代码没有格式化它在下面)
话虽如此,在请求中使用诸如抓取脚本之类的长 运行 通常是不好的做法。你通常想使用一个抓取作业队列,你的控制器发布工作要做,你的抓取器订阅它并在它完成缓存结果时通知它。
from bottle import route, run
import scraper
@route('/scrape')
def scrape():
return scraper.main()
我是 python 初学者,我需要一些帮助来创建调用 python 网络抓取脚本的网络服务(课程任务)。
我可以使用 Bottle 创建 Web 服务。我想使用 static_file 调用脚本,但我不确定,因为文档说 static_file 用于 CSS.
想法是先创建网络服务,然后使用服务器上的网络抓取脚本。
感谢哥伦比亚的帮助和问候!
P.S。我的英语不是很好,但我希望有人能理解我并帮助我。
你可以试试我找到的这个指南:
http://docs.python-guide.org/en/latest/scenarios/scrape/
对于 xpath 的东西,我建议使用带有 "Firebug" 插件的 Mozilla Firefox。它可以为您生成 xpath,这将帮助您更快地编写脚本
- 除非它已经在一个函数中,否则请编辑您的抓取脚本,以便您的代码包含在一个函数中,该函数 returns 您想要的任何信息。它应该像缩进所有未缩进的内容并添加
def main():
一样简单
- 假设您的脚本名为 scraper.py,它与您的瓶子控制器一起位于控制器文件的顶部,添加一个
import scraper
. - 在您的回调中,您可以调用
scraper.main()
(不知道为什么粘贴这里的代码没有格式化它在下面)
话虽如此,在请求中使用诸如抓取脚本之类的长 运行 通常是不好的做法。你通常想使用一个抓取作业队列,你的控制器发布工作要做,你的抓取器订阅它并在它完成缓存结果时通知它。
from bottle import route, run
import scraper
@route('/scrape')
def scrape():
return scraper.main()