Как убрать кавычки в выводе при очистке? - PullRequest
0 голосов
/ 29 апреля 2019

Я очищаю веб-сайт Dmoz, и я сделал много функций, но я просто хочу показать вам функцию, в которой я сталкиваюсь с проблемой, и что всякий раз, когда я печатаю вывод, я получаю quotes в region_subcategories ч / б другом регионе, и я хочу удалить это. Я использовал strip в списке в for loop, чтобы удалить \r\n. Но я столкнулся с другой проблемой quotes. Как с этим бороться?

Вот изображение:

enter image description here

Вот мой код:

def Regional_category(self, response):
    items = response.meta['items']
    names = {'name1':'Regional_subcategories'
             # 'name2':'Related_Categories',
             # 'name3':'Site title',
             # 'name4':'Site Description'
             }
    finder = {'finder1': '.browse-node::text',
              # 'finder2': '.one-browse-node::text',
              # 'finder3': '.site-title::text',
              # 'finder4': '.site-descr::text',
              }
    for name, find in zip(names.values(), finder.values()):
        items[name] = list(map(str.strip,response.css(find.strip()).extract()))
        yield items

1 Ответ

0 голосов
/ 29 апреля 2019

Если я правильно вас понял, это не просто цитаты, это пустые элементы. Вы можете попробовать:

  1. проверьте ваш css селектор в finder и постройте его более корректно, чтобы избежать пустых данных;
  2. или попробуйте отфильтровать их вручную. Вот пример, как это сделать более понятным способом:
# I omit `find.strip()` since you have hardcoded values there
items[name] = [i.strip() for i in response.css(find).extract() if i.strip()]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...