Мой код:

number = 0
while True:
     number +=1
     url = url + '?curpage={}'.format(number)
     html = urllib2.urlopen(url).read()

Моя проблема: у меня есть цикл while, а в цикле while у меня есть URL. Для каждого шага я хочу изменить URL на:

url?curpage=1
url?curpage=2
...

Что я получаю:

url?curpage=1
url?curpage=1?curpage=2
... 

Любые предложения о том, как решить эту проблему?

-2
AlpU 11 Янв 2017 в 03:07

3 ответа

Лучший ответ

Не изменяйте url в цикле. Например:

url = "<base url>"
number = 0
while True:
     number +=1
     html = urllib2.urlopen('{}?curpage={}'.format(url, number)).read()
3
Randy 11 Янв 2017 в 00:10
number = 0
for i in range(10):
    url = 'http://www.example.com/'
    number = number + 1
    url = url + '?curpage={}'.format(number)
    print (url)
0
Sidharth Singh 11 Янв 2017 в 00:19
url = url + ...

Говорит добавить в конец url, делая его длиннее с каждой итерацией

Из вашего ожидаемого результата вы, казалось бы, хотите:

html = urllib2.urlopen(url+'?curpage={}'.format(number)).read()

Кроме того, ваш цикл никогда не закончится.

0
Scott Hunter 11 Янв 2017 в 00:10