Я попытался в этой модели в соответствии с моими требованиями. Мне нужно сохранить дату, когда когда-либо создается объект. Я хочу получить все записи (документы) между двумя датами в моем html-файле. Я использовал следующий формат: mm / dd / yyyy
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<script>
//jquery
$(document).ready(function(){
$("#select_date").click(function() {
$.ajax({
type: "post",
url: "xxx",
datatype: "html",
data: $("#period").serialize(),
success: function(data){
alert(data);
} ,//success
}); //event triggered
});//ajax
});//jquery
</script>
<title></title>
</head>
<body>
<form id="period" name='period'>
from <input id="selecteddate" name="selecteddate1" type="text"> to
<input id="select_date" type="button" value="selected">
</form>
</body>
</html>
в моем файле py (python) я преобразовал его в «iso fomate» следующим образом
date_str1 = request.POST["SelectedDate1"]
SelectedDate1 = datetime.datetime.strptime(date_str1, '%m/%d/%Y').isoformat()
и сохранен в моей коллекции dbmongo с помощью «SelectedDate» «как поле в моей коллекции
для извлечения данных или документов между двумя датами, которые я использовал в следующем запросе
db.collection.find( "SelectedDate": {'$gte': SelectedDate1,'$lt': SelectedDate2}})
Существует несколько решений (по умолчанию они отбрасываются). Вот пример использования опции HEADERFUNCTION, которая позволяет указать функцию для их обработки.
Другими решениями являются опции WRITEHEADER (не совместимые с WRITEFUNCTION) или установка для HEADER значения True, чтобы они передавались вместе с телом.
#!/usr/bin/python
import pycurl
import sys
class Storage:
def __init__(self):
self.contents = ''
self.line = 0
def store(self, buf):
self.line = self.line + 1
self.contents = "%s%i: %s" % (self.contents, self.line, buf)
def __str__(self):
return self.contents
retrieved_body = Storage()
retrieved_headers = Storage()
c = pycurl.Curl()
c.setopt(c.URL, 'http://www.demaziere.fr/eve/')
c.setopt(c.WRITEFUNCTION, retrieved_body.store)
c.setopt(c.HEADERFUNCTION, retrieved_headers.store)
c.perform()
c.close()
print retrieved_headers
print retrieved_body
Другой вариант, использование human_curl: pip human_curl
In [1]: import human_curl as hurl
In [2]: r = hurl.get("http://stackoverflow.com")
In [3]: r.headers
Out[3]:
{'cache-control': 'public, max-age=45',
'content-length': '198515',
'content-type': 'text/html; charset=utf-8',
'date': 'Thu, 01 Sep 2011 11:53:43 GMT',
'expires': 'Thu, 01 Sep 2011 11:54:28 GMT',
'last-modified': 'Thu, 01 Sep 2011 11:53:28 GMT',
'vary': '*'}
Этот мог бы или не могла бы быть альтернатива для Вас:
import urllib
headers = urllib.urlopen('http://www.pythonchallenge.com').headers.headers