【发布时间】:2021-07-07 23:58:49
【问题描述】:
所以我使用 javascript html css 等创建了一个桌面电子应用程序,我有一个机器人,当用户单击按钮时,我想运行该机器人,该机器人是用 python 编写的。 bot 所做的是使用 selenium 和 chrome 驱动程序进行网络抓取 我只是想知道有没有一种方法可以将 bot 及其源代码存储在客户端计算机之外,这样源代码是不可见的,并且仍然使客户端能够使用bot 到 webscrape。
对不起,如果这是一个新手问题,我来自 c++ 和 swift 移动开发,我是一名初级 CS 学生,所以我只是在自学新东西。
【问题讨论】:
-
这绝对是可能的,不过你必须将你的 python 代码变成一个面向公众的 web 服务器。您可以为此使用烧瓶,但您还需要托管。
-
@ChrisG 通过面向公众的网络服务器,您到底是什么意思,托管您的意思是 heroku 或 AWS 对。那么使用flask的电子应用程序会与服务器通信并从那里运行代码以访问chromedriver?
-
好吧,不管涉及哪种语言,如果你想对用户隐藏你的抓取代码,你需要把它放在一个网络服务器上,然后从你的电子应用程序向服务器发出请求。您的 python 代码正在执行抓取,因此您不妨将其扩展为 Web 服务器。 IE。包含您的机器人的烧瓶应用程序托管在服务器上。这可能行得通吗? pythonanywhere.com
-
是的,我想知道服务器上的请求是否可以在客户端计算机上运行,因此请在他们的计算机上打开 chrome 驱动程序。
-
if the requests on the server can run on the clients computer...?我不认为你可以让 python 机器人“在”客户端的计算机“外部”和“内部”的 chrome 抓取过程。这个想法是电子应用程序向基于 python 的服务器发出请求,然后进行抓取;结果作为对请求的响应返回。另外:你为什么要对客户端隐藏抓取代码?你首先要刮什么?这可能都是一个巨大的XY problem
标签: javascript python electron bots