from scrapy.spider import BaseSpider
from scrapy.selector import HtmlXPathSelector
class DmozSpider(BaseSpider):
name = "dmoz"
allowed_domains = ["dmoz.org"]
start_urls = [
"www.dmoz.org/Computers/Programming/Languages/Python/Books/",
"www.dmoz.org/Computers/Programming/Languages/Python/Resources/"
]
def parse(self, response):
hxs = HtmlXPathSelector(response)
sites = hxs.select('//ul/li')
for site in sites:
title = site.select('a/text()').extract()
link = site.select('a/@href').extract()
desc = site.select('text()').extract()
print title, link, desc
Это мой код. Я хочу, чтобы много URL-адресов очищали с помощью цикла. Итак, как я могу это допустить? Я поместил несколько URL-адресов, но я не получил выход от всех них. Некоторые URL-адреса перестают отвечать. Итак, как я могу получить данные точно, используя этот код?сканирование нескольких веб-страниц с веб-сайта
Извините за поздний ответ, я попытался определить правила, но это не моя настоящая проблема. Моя проблема заключается в том, как получить вывод всех страниц, которые я поставляю в start_urls? Я получаю вывод в моем .csv-файле только с первых 3-4 страниц. У меня около около 20 страниц, чтобы царапать. Итак, как я должен это делать? После очистки этих 3-4 страниц моя программа перестает получать ответ с сервера. – Nits