我希望能够构造一个原始HTTP请求并使用套接字发送它.显然,你希望我使用像urllib和urllib2这样的东西,但我不想使用它.
它必须看起来像这样:
import socket
tcpsoc = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
tcpsoc.bind(('72.14.192.58', 80)) #bind to googles ip
tcpsoc.send('HTTP REQUEST')
response = tcpsoc.recv()
Run Code Online (Sandbox Code Playgroud)
显然,您还需要请求页面/文件以及获取和发布参数
工作目录中有一个脚本,我可以访问:
from . import core.py
Run Code Online (Sandbox Code Playgroud)
我还想从core.py导入*.我怎么用Python写这个?
我可以使用执行任务
scrape_adhoc_reporting([store], [types], inventory)
Run Code Online (Sandbox Code Playgroud)
但是,这是一个问题,因为此任务可能很容易花费一个小时。因此,我尝试使任务异步。我尝试了以下两种方法:
scrape_adhoc_reporting.apply_async(args=[[store], [types], inventory])
scrape_adhoc_reporting.delay([store], [types], inventory)
Run Code Online (Sandbox Code Playgroud)
这两种方法均无效。该视图只是按照其应有的方向进行重定向,但是任务从未执行过。错误日志中没有错误。关于我在做什么错的任何见解?
编辑:多看了一眼之后,我看到人们在谈论注册任务。这是我需要做的吗?
我知道这看起来很微不足道,但我看不到让它在 cronjob 中工作。
我在跑步
zip -r /backup/$(date +'%Y%m%d').zip /var/www
Run Code Online (Sandbox Code Playgroud)
这工作正常。它在我的备份目录中为我提供了 zip 文件。
但我会打开 Cron 选项卡
crontab -e
Run Code Online (Sandbox Code Playgroud)
我将它附加到文件的底部,以便它每天更新。
这是它不起作用的地方。
我究竟做错了什么?
编辑:crontab 看起来像
0 1 * * * /home/serveradmin/backup.sh
Run Code Online (Sandbox Code Playgroud) 我正在使用django_rest_auth进行 Facebook 登录。
当我尝试通过 facebook api 登录时,我总是收到此错误
/rest_auth/facebook/
我尝试了这篇文章,没有帮助。
[04/Dec/2016 12:55:42] "POST /rest-auth/facebook/ HTTP/1.1" 500 126046
Internal Server Error: /rest-auth/facebook/
Traceback (most recent call last):
File "C:\Python27\lib\site-packages\django\core\handlers\base.py", line 149, in get_response
response = self.process_exception_by_middleware(e, request)
File "C:\Python27\lib\site-packages\django\core\handlers\base.py", line 147, in get_response
response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "C:\Python27\lib\site-packages\django\views\decorators\csrf.py", line 58, in wrapped_view
return view_func(*args, **kwargs)
File "C:\Python27\lib\site-packages\django\views\generic\base.py", line 68, in view
return self.dispatch(request, *args, **kwargs)
File "C:\Python27\lib\site-packages\rest_framework\views.py", line 474, in dispatch
response = self.handle_exception(exc)
File "C:\Python27\lib\site-packages\rest_framework\views.py", …
Run Code Online (Sandbox Code Playgroud) 我正在阅读Python的文件.我打开这个文件并使用'rb'来读取字节.当我把它们读出来时,说:
f.read(1)
Run Code Online (Sandbox Code Playgroud)
它会输出这样的东西
b'\x50'
Run Code Online (Sandbox Code Playgroud)
所以我的问题是,当我尝试这样一个更长的字符串时
f.read(24)
Run Code Online (Sandbox Code Playgroud)
我懂了:
b'R\x00S\x00S\x00Q\x00S\x00O\x00N\x00P\x00S\x00M\x00R\x00P\x00
Run Code Online (Sandbox Code Playgroud)
您注意到十六进制中混合了ASCII字符.我希望R显示为\ x52.
我怎么做?
我正在使用python编写一个位图文件.我创建位图头的代码是:
pack('bblll', 66, 77, fileLength, 0, 122)
Run Code Online (Sandbox Code Playgroud)
除非我的数学错误,(其中,不是),这应该创建一个14字节长的字节串.
b = char(1字节)l = long(4字节)
1 + 1 + 4 + 4 + 4 = 14
但是,问题是,我收到2个额外的字节; 假设我的文件长度为142,我将收到以下内容(以十六进制表示):
42 4D 00 00 8E 00 00 00 00 00 00 00 7A 00 00 00
Run Code Online (Sandbox Code Playgroud)
2个额外位在偏移量0x2和0x3处为空.他们来自哪里?我如何摆脱他们?它破坏了我的形象.
所以Django 1.5不再使用direct_to_template调用.
我移植了一些网址,我被这个拦住了.
url(r'^system_settings/$',
'django.views.generic.simple.direct_to_template',
{
'template': 'helpdesk/system_settings.html',
'extra_context': {
'ADMIN_URL': getattr(settings, 'ADMIN_URL', '/admin/'),
},
},
Run Code Online (Sandbox Code Playgroud)
我知道我可以使用
url(r'^help/context/$',
TemplateView.as_view(template_name='helpdesk/system_settings.html')...
Run Code Online (Sandbox Code Playgroud)
但我不知道extra_context
应该去哪里.任何见解?
嘿,我一直在研究这个问题,我可以记得我哥哥让我通过这个同样的算法.
基本上,它只是添加了键和短语中两个字符的ascii值.
我可以加密它:
def encrypt(key, string):
encoded = ''
for i in range(len(string)):
key_c = ord(key[i % len(key)])
string_c = ord(string[i % len(string)])
encoded += chr((key_c + string_c) % 127)
return encoded
Run Code Online (Sandbox Code Playgroud)
但我似乎无法记住我们在解密方面所做的工作.它很难逆转一个mod:P有什么想法吗?
我有一个输出原始输入变量的函数(见下文).问题是我不能......
int print(std::string value){
std::cout << value << std::endl;
return 0;
}
Run Code Online (Sandbox Code Playgroud)
如果我尝试给出一个int,它会抛出一个错误.我需要一种方法来提供任何变量类型(稍后检查它是什么类型)并相应地采取行动
我有一个用于创建客户的CreateView,但我还需要与该客户一起创建"标识"模型.我有一个识别模型,它具有模型的外键,因为我们需要能够为某些ID添加任何数量的ID(驾驶执照,护照等)
无论如何,当前代码(仅创建新客户)如下所示:
class CustomerCreationView(CreateView):
template_name = "customers/customer_information.html"
form_class = CustomerInformationForm
def get_context_data(self, *args, **kwargs):
context_data = super(CustomerCreationView, self).get_context_data(*args, **kwargs)
context_data.update({
'new_customer': True,
})
return context_data
Run Code Online (Sandbox Code Playgroud)
CustomerInformationForm是ModelForm.我想为标识创建另一个ModelForm,但我不知道如何将第二个表单添加到CreateView.我找到了这篇文章,但它已经有5年了,并没有谈到CreateView.
我正在写剧本,我有类似的东西
var myObject = {};
if (myObject == {}){
...
}
Run Code Online (Sandbox Code Playgroud)
我惊讶地发现这被评估为假.
阅读javascript所做的一些有趣的问题,我发现这篇文章,它告诉我们{}
会在if语句中产生一个"truthy"对象,例如
if ({}){ // true
...
}
Run Code Online (Sandbox Code Playgroud)
嗯,进一步准备好讨论String Equality,对于对象比较,如果它们引用相同的对象,它将返回true .(甚至{} === {}
返回false)
我能想到的唯一原因是返回false是因为对象在技术上处于不同的内存地址,因此被认为是不同的对象.
python ×5
django ×2
struct ×2
c++ ×1
celery ×1
cron ×1
crontab ×1
django-1.4 ×1
django-1.5 ×1
django-forms ×1
encryption ×1
http ×1
int ×1
javascript ×1
sockets ×1
string ×1
zip ×1