Извлечение недостающих ценностей с помощью скрапа - PullRequest
0 голосов
/ 23 апреля 2020

Я пытаюсь решить проблемы обработки пропущенных значений, используя item_loader.add_ css в ссылках и критических c элементах. Это должно быть 8 значений для каждого элемента, но это 6 и ничего не извлекается в критике c.

Мой код:

rotten_spyder.py

class RottenSpiderSpider(scrapy.Spider):

    name = 'rotten'
    start_urls = ['https://www.rottentomatoes.com/m/toy_story/reviews?type=top_critics&sort=&page=2']

    def parse(self, response):
        # crawl page 
        for row in response.css('.content'):

            item_loader = ItemLoader(item=ScraperottentomatoesItem(), selector=row)
            item_loader.add_css('quote', '.the_review::text', re='\w+.+')
            item_loader.add_css('links', '.review-link a::attr(href)')
            item_loader.add_css('critic', '#content .articleLink::text')

            yield item_loader.load_item()

items.py

class ScraperottentomatoesItem(scrapy.Item):
    quote = scrapy.Field()
    links = scrapy.Field()
    critic = scrapy.Field()

Вот вывод без критических значений c:

enter image description here

enter image description here

1 Ответ

0 голосов
/ 24 апреля 2020

Для первой части вы сказали, что должно быть 8 пунктов. Если вы посмотрите на веб-сайт, гиперссылка с надписью «Полный обзор» находится там, где находится ссылка. Там всего 6 ссылок, так что все в порядке. Для второй части вы извлекаете текст вместо ссылки, поэтому вы изменили бы его, как и другую.

Здесь выполняется этот код. Это сработало для меня.

Rotten

Вот вывод:

{'criti c': ['Sean P. Means ',' Джон Хартл ',' Питер Стэк ',' Роджер Эберт ',' Рита Кемпли ',' Джеймс Берардинелли ',' Роджер Мур '],' links ': [' http://www.sfgate.com/cgi-bin/article.cgi?f= / c / a / / 1996/11/01 / DD69735.DTL ',' http://www.rogerebert.com/reviews/toy-story-1995 ',' http://www.washingtonpost.com/wp-srv/style/longterm/movies/videos/toystory.htm ',' http://www.reelviews.net/php_review_template.php?identifier=46 ', 'http://www.ew.com/ew/article/0 ,, 299671,00. html', 'http://www.orlandosentinel.com/entertainment/movies/orl-movie-review-toy-story-toy-story-2-3d, 0,464068 0.story'], 'цитата': ['Технически, Игрушка «История почти безупречна», «Остроумный, удивительно образный, полностью созданный компьютером» мультфильм Диснея - безусловно, лучший из новых праздничных фильмов в «городе». «Сценарий Лассетера, Пит Доктер, Эндрю Стэнтон и Джо «Ранфт» полны хитрых шуток, которые держат двух героев у «чужого горла и сюжета на ускоренной перемотке вперед». «Результатом является призрачная поездка на американских горках на мове ie '' Это хорошая смена темпа, чтобы увидеть, как студия рисует магию c из этого "'современного рассказа о обычном ребенке 20-го века Энди d его «игрушки, жаждущие угодить». «Один большой минус в истории игрушек связан с« чрезмерной коммерциализацией »Диснея.« Я с трудом могу представить, чтобы в фильмах было больше удовольствия, чем в «Истории игрушек». чудесная новая функция Disney, это первый «полнометражный анимационный фильм, который будет снят полностью на компьютере». «Великолепная озвучка, визуальные каламбуры - все это в совокупности с« изменителем анимационных игр ».]}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...