我需要检查当前时间是否在时间范围内.最简单的情况time_end> time_start:
if time(6,0) <= now.time() <= time(12,00): print '1'
Run Code Online (Sandbox Code Playgroud)
但是当用户在结束时间小于开始时间时输入时间范围时开始麻烦,例如"23:00 - 06:00".像'00:00'这样的时间就在这个范围内.大约5年前我写了这个PHP函数:
function checkInterval($start, $end)
{
$dt = date("H:i:s");
$tstart = explode(":", $start);
$tend = explode(":", $end);
$tnow = explode(":", $dt);
if (!$tstart[2])
$tstart[2] = 0;
if (!$tend[2])
$tend[2] = 0;
$tstart = $tstart[0]*60*60 + $tstart[1]*60 + $tstart[2];
$tend = $tend[0]*60*60 + $tend[1]*60 + $tend[2];
$tnow = $tnow[0]*60*60 + $tnow[1]*60 + $tnow[2];
if ($tend < $tstart)
{
if ($tend - $tnow > 0 && $tnow > $tstart)
return true; …Run Code Online (Sandbox Code Playgroud) 基本hello.wsgi工作正常.其他django应用程序也完美地与完全相同的virtualenv版本.
mod_wsgi 挂起约10分钟(!!!),我发现没有什么能指出我的问题(loglevel debug):
[Tue Mar 25 23:11:08.878578 2014] [:info] [pid 4719:tid 140720591648640] mod_wsgi (pid=4719): Attach interpreter ''.
[Tue Mar 25 23:11:08.879171 2014] [:info] [pid 4717:tid 140720591648640] mod_wsgi (pid=4717): Attach interpreter ''.
[Tue Mar 25 23:11:10.891348 2014] [authz_core:debug] [pid 4730:tid 140720477226752] mod_authz_core.c(802): [client 127.0.0.1:40844] AH01626: authorization result of Require all granted: granted
[Tue Mar 25 23:11:10.891391 2014] [authz_core:debug] [pid 4730:tid 140720477226752] mod_authz_core.c(802): [client 127.0.0.1:40844] AH01626: authorization result of <RequireAny>: granted
[Tue Mar 25 23:11:10.891489 2014] [authz_core:debug] …Run Code Online (Sandbox Code Playgroud) 我有一个页面,其中包含许多具有不同内容类型的对象.我需要有能力评价这个对象.这是一个类:
class Score(models.Model):
user = models.ForeignKey(User)
content_type = models.ForeignKey(ContentType)
object_id = models.PositiveIntegerField()
for_object = generic.GenericForeignKey('content_type', 'object_id')
like = models.BooleanField(default=True)
created_at = models.DateTimeField(auto_now_add=True, blank=True, null=True)
comment = models.CharField(max_length=255, blank=True, null=True)
objects = ChainerManager(ScoreQuerySet)
def __unicode__(self):
return u'Score for (%s, #%s) from user %s at %s' %\
(self.content_type, self.object_id, self.user.get_full_name(), self.created_at)
class Meta:
unique_together = (('user', 'content_type', 'object_id'),)
Run Code Online (Sandbox Code Playgroud)
我的模板应如下所示:
...
{% for random_object in random_object_queryset %}
<a href={% url like_object random_object.<content_type> random_object.id %}>{{ random_object.name }}</a>
<a href={% url dislike_object random_object.<content_type> random_object.id %}>{{ …Run Code Online (Sandbox Code Playgroud) 在我的网站上,用户应该能够过滤数字,例如*123*321*,匹配"666 123 555 321 111"或LIKE '%123%321%'.
默认情况下,django的orm会逃脱%-sign.我可以使用正则表达式或原始查询,但有一些解决方法吗?
UPD:我会把它放在这里以显示另一种方式.
integer_search = [] # for colorizing found substrings
if actual['integer']:
integer_match = filter(None, actual['international'].split('*'))
integer_search = integer_match
integer_match = ''.join('%s[[:digit:]]*' % i for i in integer_match)
integers = integers.filter(international__regex=integer_match)
Run Code Online (Sandbox Code Playgroud) 我的XML看起来像:
...
<termEntry id="c1">
<langSet xml:lang="de">
...
Run Code Online (Sandbox Code Playgroud)
我有代码:
from lxml import etree
...
for term_entry in root.iterfind('.//termEntry'):
print term_entry.attrib['id']
print term_entry.nsmap
for lang_set in term_entry.iterfind('langSet'):
print lang_set.nsmap
print lang_set.attrib
for some_stuff in lang_set.iterfind('some_stuff'):
...
Run Code Online (Sandbox Code Playgroud)
我得到空的nsmap dict,我的attrib dict看起来像 {'{http://www.w3.org/XML/1998/namespace}lang': 'en'}
该文件可能不包含xml:在命名空间中,或者它可能具有不同的命名空间.我如何知道标签声明中使用的命名空间?实际上,我只需要获取一个lang属性,我不关心使用什么命名空间.我不想使用任何蹩脚的垃圾lang_set.attrib.values()[0]或其他具有已知名称的字段的查找.
我有一个文件,即http://www.agfl.cs.ru.nl/papers/manual28.pdf (英文)
Pdfminer 和 poppler 在大多数解析页面中显示相同的结果,例如:
¾º¿  ÒÙ Öݸ ¾¼¼ Ⱥ ¾º ÂÙÒ ¸ ¾¼¼ ź Ë ÙØØ Ö¸ Ǻ Ë
似乎无法读取字体自定义编码。如何指定?
下面是代码示例:
# poppler
input_filename = '/tmp/manual28.pdf'
document = poppler.document_new_from_file('file://%s' % urllib.pathname2url(os.path.abspath(input_filename)), None)
n_pages = document.get_n_pages()
for i in range(n_pages):
page = document.get_page(i)
print page.get_text()
# chardet.detect(page.get_text()) # utf8 all time
# pdfminer
def pdf_to_html(in_fp, out_fp, codec='utf-8', maxpages=0, pagenos=None, html=True):
rsrcmgr = PDFResourceManager()
laparams = LAParams()
if isinstance(in_fp, basestring):
in_fp = open(in_fp, 'rb')
if isinstance(out_fp, basestring):
out_fp …Run Code Online (Sandbox Code Playgroud) 登录后,用户应重定向到?next=%s网址.我想检查指定的url是否映射到一个existant视图.有reverse()通过视图获取url的功能,我需要vv所以,我需要Django为url模式匹配执行的功能.
我明白了,问题很简单,但我在谷歌找不到答案.
我有一个xml文件,其格式类似于docx,即:
<w:r>
<w:rPr>
<w:sz w:val="36"/>
<w:szCs w:val="36"/>
</w:rPr>
<w:t>BIG_TEXT</w:t>
</w:r>
Run Code Online (Sandbox Code Playgroud)
编辑:我需要在源xml中获得"BIG_TEXT"的索引,如:
from lxml import etree
text = open('/devel/tmp/doc2/word/document.xml', 'r').read()
root = etree.XML(text)
start = 0
for e in root.iter("*"):
if e.text:
offset = text.index(e.text, start)
l = len(e.text)
print 'Text "%s" at offset %s and len=%s' % (e.text, offset, l)
start = offset + l
Run Code Online (Sandbox Code Playgroud)
我可以从当前索引+ len(文本)的位置开始新的搜索,但还有另一种方法吗?w例如,元素可以具有一个字符.它将找到w标记文本的索引,但不是索引文本的索引w.
我需要每分钟将记录的文件从3台服务器复制到一台数据存储器.我不需要保存原始文件 - 数据处理不在所有文件中.
但是当我使用选项时--remove-sent-files,rsync发送并删除未完成(未关闭)的文件.
我试图阻止使用lsof和发送这些打开的文件--exclude-from,但似乎rsync不会在exlude列表中取消遍历完整路径:
--exclude-from=FILE read exclude >>patterns<< from FILE
lsof | grep /projects/recordings/.\\+\\.\\S\\+ -o | sort | uniq
/projects/recordings/<uid>/<path>/2012-07-16 13:24:32.646970-<id>.WAV
Run Code Online (Sandbox Code Playgroud)
所以,脚本看起来像:
# get open files in src dir and put them into rsync.exclude file
lsof | grep /projects/recordings/.\\+\\.\\S\\+ -o | sort | uniq > /tmp/rsync.exclude
# sync without these files
/usr/bin/rsync -raz --progress --size-only --remove-sent-files --exclude-files=/tmp/rsync.excldude /projects/recordings/ site.com:/var/www/storage/recordings/
# change owner
ssh storage@site.com chown -hR storage:storage /var/www/storage/recordings
Run Code Online (Sandbox Code Playgroud)
那么,我可能会尝试另一种工具吗?或者为什么rsync不听exlude?
我正在编写一个使用的应用程序django-floppyforms.此外,我的应用程序提供了默认twitter bootstrap皮肤,所以我已经在我的应用程序中自定义了floppyforms模板,使它们成为引导程序.我放入floppyforms/{layouts, rows}/bootstrap了我的应用程序的模板目录.但它不起作用:django不会使用它们.因此,我不想强制最终用户将自定义模板放入他的项目中,事实上,我想指出django floppyforms在呈现应用内内容时使用我的本地模板.我只想让我的应用程序独立,没有任何不方便的依赖.
现在我有与django-admintools-bootstrap和类似的麻烦Django 1.5.1.据之前添加admin_tools的INSTALLED_APPS,但没有效果.它也不会收集静电django-admintools-bootstrap.在使用这两个软件包和Django 1.4的其他类似项目中,一切正常.此外,我已经检查了Django 1.5的发行说明,以了解模板查找顺序的更改,但没有发现任何相关信息.