【发布时间】:2016-05-28 04:57:33
【问题描述】:
我想从一个基本的 html 表单中获取数据
<form method="send" action="/send">
Name <input type="text" name="name"/>
<input type="submit" value="Send">
</form>
到一个python文件中。这可能吗?我不想使用 CGI。 谢谢 乔什
【问题讨论】:
我想从一个基本的 html 表单中获取数据
<form method="send" action="/send">
Name <input type="text" name="name"/>
<input type="submit" value="Send">
</form>
到一个python文件中。这可能吗?我不想使用 CGI。 谢谢 乔什
【问题讨论】:
您是否需要使用 CGI,取决于您的用例。
Python 框架。像Flask,倾向于提供他们自己的开箱即用的小型网络服务器。但是,此类服务器主要用于在开发阶段进行测试。集成到成熟的 Web 浏览器通常是通过 CGI 或 FastCGI,并且可以提供高级定制和扩展到巨大的负载。
但是,根据您的目标受众,一个好的“包含”网络服务器,如web2py 中的服务器,将为您提供帮助。出于学习目的,或者在防火墙后面的封闭网络中,这样的解决方案是完全可以的,并且你避免了技术 CGI 的东西。一旦您的应用程序完成或“包含的”网络服务器不再满足您的需求,您仍然可以将您的应用程序部署在“真正的”网络服务器后面。
如果你真的喜欢它的强硬方式,你也可以考虑写your own web server from scratch ;)
【讨论】:
Python 在服务器端工作。浏览器在客户端工作。他们通过网络进行通信。因此,如果没有 CGI 或任何类似 CGI 的方法(FastCGI、PSGI、WSGU 等),就不可能做到这一点。 Python 的最佳方式是 WSGI。 wsgi入门http://uwsgi-docs.readthedocs.org/en/latest/WSGIquickstart.html流程表单示例http://eddmann.com/posts/understanding-python-wsgi-with-examples/
【讨论】:
如果我正确理解您的问题,您可以使用selenium 模块。例如,如果您想从 Google 获取源代码,您的代码将是:
from selenium import webdriver
driver = webdriver.Chrome() # Or Firefox, or whatever browser you use
driver.get('https://google.com')
data = driver.page_source
Google 的源代码现在存储在 data 变量中。
【讨论】: