2016-07-01 2 views
-2

Я пытаюсь сделать что-то вроде:Для, HTML, и красивый суп

from BeautifulSoup import BeautifulSoup 
import urllib2,unicodedata 
import re 

for x in range(1,105): 

html_page = urllib2.urlopen('http://xxxxxx/BUSCAR/H=1;OR=5;ST=;LIST_ART_PAGENUMBER='+str(x)+';/Dxxxxx.aspx') 
soup = BeautifulSoup(html_page) 
for link in soup.findAll('a', attrs={'href': re.compile("^http://xxxxxx/PRODUCTO/PROD_ID")}): 
    print link.get('href') 

для извлечения ссылок. Я правильно извлекаю ссылки. Но я хочу извлечь диапазон от 1 до 105

но это не работает!

error: expected an indented block 

ответ

1

Вам нужно отступить, когда вы запустите цикл for. Попробуйте следующее:

from BeautifulSoup import BeautifulSoup 
import urllib2,unicodedata 
import re 

for x in range(1,105): 

    html_page = urllib2.urlopen('http://xxxxxx/BUSCAR/H=1;OR=5;ST=;LIST_ART_PAGENUMBER='+str(x)+';/Dxxxxx.aspx') 
    soup = BeautifulSoup(html_page) 
    for link in soup.findAll('a', attrs={'href':re.compile("^http://xxxxxx/PRODUCTO/PROD_ID")}): 
     print link.get('href') 
+0

tksss очень много !!!! –

+0

Привет @DamianPerez, пожалуйста. Это очень просто и ничего особенного. Продолжай учиться! Вы можете принять ответ, если найдете его удовлетворительным. –

Смежные вопросы