Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/395.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/276.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Java中使用Scrapy?_Java_Python_Scrapy - Fatal编程技术网

在Java中使用Scrapy?

在Java中使用Scrapy?,java,python,scrapy,Java,Python,Scrapy,这是以下问题的后续问题: 基本上,我有一个在浏览器中运行的java小程序,我想让它刮几页。有没有一种方法可以获得使用Java驱动python的所有好处 (为了增加工作量,我正在Windows机器上开发……这是我第一次尝试使用Python,所以我不知道在考虑将它们结合使用时会有什么限制。也许有更好的方法使用Java?就像你前面的问题一样。不能使用Jython,因为scrapy是一个纯python。通常您会使用Jython访问Java库,而不是相反 Python回答 为了回答您最初的问题,我将使用p

这是以下问题的后续问题:

基本上,我有一个在浏览器中运行的java小程序,我想让它刮几页。有没有一种方法可以获得使用Java驱动python的所有好处


(为了增加工作量,我正在Windows机器上开发……这是我第一次尝试使用Python,所以我不知道在考虑将它们结合使用时会有什么限制。也许有更好的方法使用Java?

就像你前面的问题一样。不能使用Jython,因为scrapy是一个纯python。通常您会使用Jython访问Java库,而不是相反

Python回答 为了回答您最初的问题,我将使用python单独开发我的刮片应用程序,并使用一个中间web服务层与Java小程序进行通信。您可以使用python实现web服务侦听器,它侦听请求,然后使用Java小程序中的web服务

没有其他解决方案可以保证您的稳定性,因为没有与python和java通信的标准方式,所以我肯定会选择web服务路线

Java回答 这似乎是一个很好的起点,它不仅仅是一个刮取库(注:我没有第一手的经验)。这似乎有些过分,但由于您的应用程序已经使用Java,所以选择这个选项似乎更好


最终,这在很大程度上取决于您的需求。Python scrapy可能会更快地启动和运行它,如果您想实现一个成熟的web爬虫程序,那么Apache Nutch似乎是一个不错的选择。

这个答案是错误的。Jython可用于在JVM中运行Python脚本。@suriv:请仔细阅读我的答案。我的意思是scrapy不能在java中运行,因为它是纯Python,而不是Jython本身。哪一部分不清楚?您可以使用jython从java调用python。jython将遇到麻烦的库是那些使用对CPython本身(实现)的调用的库。纯python库正是您可以运行的类型。