我正在尝试使用PythonAnywhere.com的web.py平台制作一个简单的Web脚本.我的目的是创建一个simples Form,它可以获取文本框的数据,并且可以像使用PHP一样使用它们.这是我的主要脚本:
import web
from web import form
import MySQLdb
render = web.template.render('/home/user/templates/')
conn = MySQLdb.connect("mysql.server","user","*********","userdb")
curs = conn.cursor()
curs.execute('''create table if not exists Dados (
id int not null auto_increment primary key,
nome varchar(200),
item1 varchar(50),
item2 varchar(50),
item3 varchar(50),
item4 varchar(50),
item5 varchar(50));
''')
urls = (
'/', 'index'
)
formula = form.Form(
form.Textbox('Nome', id='nome'),
form.Textbox('Item 1', id='it1'),
form.Textbox('Item 2', id='it2'),
form.Textbox('Item 3', id='it3'),
form.Textbox('Item 4', id='it4'),
form.Textbox('Item 5', id='it5'),
)
class index:
def GET(self):
form = formula() …Run Code Online (Sandbox Code Playgroud) 受到Hacker News(http://blog.pythonanywhere.com/35/)20分钟内在PythonAnywhere上编写facebook应用程序的启发,我正在编写一个facebook应用程序.一切都很好,通过网络浏览器访问Facebook应用程序.它真的只花了我20分钟......
但是,当我通过Facebook iphone应用程序访问时,它抱怨没有移动版本的URL.然后我注意到Facebook App设置页面中的"Mobile Web"URL.我更新了网址,现在它至少尝试访问我的网站.但是访问权限不同,它返回"400 Bad Request"和"missing signed_request"
我从其他几个问题中收集到这些类型的facebook应用程序之间存在差异.但是,由于pythonforfacebook处理画布应用幕后的所有会话工作,我希望它可以通过移动应用程序来完成.
所以,我想知道 - pythonforfacebook也可以处理移动应用程序吗?需要什么样的重新配置来处理这两种类型的访问?
我正在使用www.pythonanywhere.com来部署我的Django项目.pythonanywhere的数据库设置如下:
Connecting:
Database host address: mysql.server
Username: Username (just as an example)
Your databases:
Start a console on: Username$DBName (just as an example)
...
Run Code Online (Sandbox Code Playgroud)
使用"manage.py migrate"命令设置数据库时,出现错误消息:
django.db.utils.OperationalError: (1044 "Access denied for user 'Username'@'%' to database 'DBName'")
Run Code Online (Sandbox Code Playgroud)
文件settings.py中的DATABASES设置如下.
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'DBName',
'USER': 'Username',
'PASSWORD': 'password',
'HOST': 'mysql.server',
'PORT': '3306',
}
}
Run Code Online (Sandbox Code Playgroud)
我可以使用以下命令在控制台中运行mysql:
$ mysql -u Username -h mysql.server -p
Run Code Online (Sandbox Code Playgroud)
当我输入以下命令时:
mysql> use mysql;
Run Code Online (Sandbox Code Playgroud)
我收到了错误消息:
ERROR 1044 (42000): Access denied for user …Run Code Online (Sandbox Code Playgroud) 您好我正在使用Pythonanywhere和我打电话
from datetime import *
print date.today().day
Run Code Online (Sandbox Code Playgroud)
它打印的时间与我住的那天不同(德克萨斯州奥斯汀).我认为这是因为存在时区差异.我如何告诉我居住的日期对象,以便获得正确的时区.提前致谢
我开始勾勒出用Python编写的量化金融信息服务网站的结构(3.x我希望)并得出结论 - 纠正我,如果我错了 - 我要去必须同时使用eventlet网络库和多处理库.
该系统的一部分基本上是一个在后台运行的cron作业,在市场关闭后检查股票市场和其他财务数据,进行机器学习和定量计算,然后将预测放在一个简单的数据库中,甚至可能是一个平坦的逗号分隔文件.(因此,参数通过文件在系统的各部分之间传递.)
我知道eventlet可以用于非阻塞I/O,这样美丽的汤或scrapy可以同时从多个站点(某种程度上)抓取信息,多处理库可以使机器学习/量化算法进行计算将所有股票数据并行作为单独的流程.
要查看预测,用户将登录使用Flask构建的系统的其他部分,该部分将访问数据库并显示预测.
我假设所有这些库和混合线程/多处理例程彼此相处?我将使用pythonanywhere.com作为主机,它们似乎有相当多的"电池包括在内".当然,当测试完成后,我可能不得不升级"工人"的数量来为最终部署的站点供电.
混合线程和多处理中的任何陷阱都会变得复杂吗?
python python-multithreading flask pythonanywhere python-multiprocessing
我正在开发一个Android应用程序,它使用HTTP请求和JSON 从pythonanywhere托管的python服务器发送和接收数据.
该应用程序通过WIFI完美运行,但当我通过移动数据使用它时会出现问题.来自具有GET请求的服务器的所有数据都可以正常工作,但POST和DELETE请求似乎不会发送或以其他方式工作.
我不知道问题是否存在
PostRequest.java
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.DefaultHttpClient;
import android.os.AsyncTask;
import android.util.Log;
public abstract class PostRequest extends AsyncTask<String,Void,String> {
private static String convertInputStreamToString(InputStream inputStream) throws IOException{
BufferedReader bufferedReader = new BufferedReader( new InputStreamReader(inputStream));
String line = "";
String result = "";
while((line = bufferedReader.readLine()) != null)
result += line;
inputStream.close();
return result;
}
@Override
protected String doInBackground(String... params) …Run Code Online (Sandbox Code Playgroud) 我已经在这一天中度过了一天,但是已经有相同的错误400了很长一段时间.基本上,该应用程序的目标是从亚马逊推荐网址解析图书的ISBN,并将其用作从亚马逊产品广告API中提取图像的参考密钥.该网页使用Python 3.4和Django 1.8编写.我花了很长时间在这里研究并决定使用python-amazon-simple-product-api,因为它会使得亚马逊的解析结果更容易一些.
答案如下:如何使用Python Amazon Simple Product API来获得产品的价格
让它看起来很简单,但我还没有完全成功地查找产品.这是我的方法通常做的控制台打印输出,已填写正确的ISBN:
>>> from amazon.api import AmazonAPI
>>> access_key='amazon-access-key'
>>> secret ='amazon-secret-key'
>>> assoc ='amazon-associate-account-name'
>>> amazon = AmazonAPI(access_key, secret, assoc)
>>> product = amazon.lookup(ItemId='1632360705')
Traceback (most recent call last):
File "<console>", line 1, in <module>
File "/home/tsuko/.virtualenvs/django17/lib/python3.4/site-packages/amazon/api.py", line 161, in lo
okup
response = self.api.ItemLookup(ResponseGroup=ResponseGroup, **kwargs)
File "/home/tsuko/.virtualenvs/django17/lib/python3.4/site-packages/bottlenose/api.py", line 242, i
n __call__
{'api_url': api_url, 'cache_url': cache_url})
File "/home/tsuko/.virtualenvs/django17/lib/python3.4/site-packages/bottlenose/api.py", line 203, i
n _call_api
return urllib2.urlopen(api_request, timeout=self.Timeout)
File "/usr/lib/python3.4/urllib/request.py", line 153, …Run Code Online (Sandbox Code Playgroud) 尝试在Python Anywhere上部署本地Django项目,但是在运行"python manage.py migrate"时收到ImportError:没有名为"environ"的模块
File "/home/Dude1983/surfapp/src/surfapp/settings/development.py",line 1, in <module>
from .base import * # NOQA
File "/home/Dude1983/surfapp/src/surfapp/settings/base.py", line 45,in <module>
import environ
ImportError: No module named 'environ'
Run Code Online (Sandbox Code Playgroud)
我检查了Django版本,均为1.9.5.
我的wsgi.py看起来像这样:
import os
import sys
path = '/home/Dude1983/surfapp/' # use your own username here
if path not in sys.path:
sys.path.append(path)
os.environ['DJANGO_SETTINGS_MODULE'] = 'surfapp.settings.production'
from django.core.wsgi import get_wsgi_application
from django.contrib.staticfiles.handlers import StaticFilesHandler
application = StaticFilesHandler(get_wsgi_application())
Run Code Online (Sandbox Code Playgroud)
我正在使用Edge 2启动器模板,我的设置位于此处:
surfapp
? ??? __init__.py
? ??? __pycache__
? ? ??? __init__.cpython-35.pyc
? ??? logger.py
? ??? …Run Code Online (Sandbox Code Playgroud) 我对Django中的后台任务有一个概念性的问题。我正在通过PythonAnywhere运行一个Python / Django站点。
我有一个名为“ databooks”的网络应用,该应用由具有以下条目的表单组成:
然后,此数据手册应用程序查看文件夹位置,并编译其中的所有其他文件以创建一个大PDF。然而,由于合并页面并添加页脚等的性质,它被认为是“重处理”由PythonAnywhere,他们定义为一个网络工作者超过5分钟,他们分别杀了。
我想到的解决方案是在提交表单后执行background-python脚本,该脚本将databooks views.py文件中的整个内容输入到backgrounddatabookgenerator.py文件中,该文件可以独立于用户在浏览器窗口中的运行而运行。
在查看了PythonAnywhere对此的诊断之后,我一直在研究一些选项,但是到目前为止,在实现后台任务(即django-background-tasks)方面还没有成功。
是否有人熟悉Django工作流程,在单击“提交”按钮后,可以实现将另一个python文件作为后台任务调用的实现?为此,我想使此后台任务独立于用户单击提交后的操作,并允许繁重的数据手册生成过程自行完成,而无需考虑时间。
views.py
def Databook_req(request):
submitted = False
if request.method == 'POST':
form = DatabookForm(request.POST, request.FILES)
What_would_you_like_to_save_the_completed_data_book_as = request.POST['What_would_you_like_to_save_the_completed_data_book_as']
Major_Equipment_Folder = request.POST['Major_Equipment_Folder']
if form.is_valid():
data_dict = {
'What_would_you_like_to_save_the_completed_data_book_as_': str(What_would_you_like_to_save_the_completed_data_book_as),
'Major_Equipment_Folder': str(Major_Equipment_Folder)
}
form.save()
DataBookName = str(What_would_you_like_to_save_the_completed_data_book_as) + '.pdf'
original_path = str(Major_Equipment_Folder)
Run Code Online (Sandbox Code Playgroud)
***然后,数据手册代码通过引用上述变量来遵循此规则。我不确定是否需要一个单独的python文件来作为后台任务运行下面的所有内容,但是它目前正在超时。
pythonanywhere ×10
python ×7
django ×4
android ×1
deployment ×1
facebook ×1
flask ×1
forms ×1
makefile ×1
package ×1
post ×1
python-2.7 ×1
web.py ×1