Generator - Provide parameters to url - requests
"Sayth Renshaw" wrote in message
news:328f42bb-ba23-4199-9f3a-9ec1829bc448 at googlegroups.com...
> I am struggling to figure out how I can create a generator to provide
> values to my url. My url needs to insert the year month and day in the url
> not as params to the url.
> import json
> import requests
> import datetime
> # using this I can create a list of dates for the first 210 days of this
> base = datetime.datetime(2017,1,1)
> def datesRange(max, min):
> date_list = (base - datetime.timedelta(days=x) for x in
> DAY = date_list.day
> MONTH = date_list.month
> YEAR = date_list.year
> yield DAY, MONTH, YEAR
> dateValues = datesRange(-210,0)
Are you sure that this works?
The easiest way to test it is -
>>> list(datesRange(-210, 0))
If I try this I get AttributeError: 'generator object has no attribute 'day'
I would write it like this -
def datesRange(max, min):
for day in range(max, min):
date = base - datetime.timedelta(days=day)
yield date.day, date.month, date.year
Actually, I have just read Peter's response, and his version is much better,
but this one is closer to your original code.
> def create_url(day, month, year):
> return url
> Then I want to insert them in this url one at a time from the generator
To do this, you need some kind of loop to iterate over your generator -
for day, month, year in datesRange(-210, 0):
# do something
Does this help?