如何 运行 ScraPy Spiders in Play, Java/Scala 环境?
How to run ScraPy Spiders in Play, Java/Scala environment?
对于当前的项目,我在 Scala 中制作了一个 Web API,但是我需要针对每个用户请求抓取 +- 70 个网址。我如何在使用 Scala/Java 的同时使用 Scrapy 做到这一点?还有其他方法吗?
尝试使用 Actor 执行后台任务。尽管实现此目的的一种方法是安排某事 2 每 N 秒发生一次,但使用 Actor 会添加一个队列(邮箱)。队列很重要,因此您不会使服务器超载。
你可以拥有这样的控制器1:
case object StartScraping
class Scraper extends Actor {
def receive = {
case StartScraping =>
// do the scraping!
}
}
class MyController (@Named("scraper-actor") configuredActor: ActorRef) {
def get = Action {
configuredActor ! StartScraping
}
}
您没有提供太多规格方面的细节,但这是一个良好的开端,适用于多种用途。
对于当前的项目,我在 Scala 中制作了一个 Web API,但是我需要针对每个用户请求抓取 +- 70 个网址。我如何在使用 Scala/Java 的同时使用 Scrapy 做到这一点?还有其他方法吗?
尝试使用 Actor 执行后台任务。尽管实现此目的的一种方法是安排某事 2 每 N 秒发生一次,但使用 Actor 会添加一个队列(邮箱)。队列很重要,因此您不会使服务器超载。
你可以拥有这样的控制器1:
case object StartScraping
class Scraper extends Actor {
def receive = {
case StartScraping =>
// do the scraping!
}
}
class MyController (@Named("scraper-actor") configuredActor: ActorRef) {
def get = Action {
configuredActor ! StartScraping
}
}
您没有提供太多规格方面的细节,但这是一个良好的开端,适用于多种用途。