Member 13888852 Ответов: 2

Ошибка веб-искателя Python


from urllib.request import urlopen
from urllib import parse
import re
print ("Enter the URL you wish to crawl..")
myurl = input("the url")
def getdata(myurl):
for i in re.findall('''href=["'](.[^"']+)["']''', urllib.urlopen(sys.argv[1]).read(), re.I):
print i
for ee in re.findall('''href=["'](.[^"']+)["']''', urllib.urlopen(i).read(), re.I):
print ee


ошибка, которую я получаю

C:\Users\user-pc\Documents\Python>питона urlcrawler.py
Файл "urlcrawler.py", строка 7
для меня в ре.метод findAll("'href, в=["'](.[^"']+)["']"', urllib.urlоткрыть(представление sys.аргумент argv[1]
).read(), re.I):
IndentationError: ожидаемый блок с отступом

Что я уже пробовал:

попробовал поискать ошибку, но не получил приблизительных результатов

Patrice T

Покажите свой код с фактическим отступом.

2 Ответов

Рейтинг:
2

Richard MacCutchan

Ваш код не имеет правильного отступа, как сообщается в сообщении об ошибке. Забудьте о поиске и прочтите документацию по Python: 3. неофициальное введение в Python — документация Python 3.7.0[^]


Рейтинг:
1

User 7429338

Ошибка довольно хорошо объясняет проблему. Тело цикла for должно быть с отступом.

for i in re.findall('''href=["'](.[^"']+)["']''', urllib.urlopen(sys.argv[1]).read(), re.I):
    print i
    for ee in re.findall('''href=["'](.[^"']+)["']''', urllib.urlopen(i).read(), re.I):
        print ee


Member 13888852

Что вы подразумеваете под отступом как я могу заставить свой код работать