Python Вывод нечетного символа в CSV через панд - PullRequest
0 голосов
/ 24 августа 2018

У меня есть отвратительный цикл, который сканирует веб-сайт и удаляет элементы с той страницы, которые он вводит в переменные, которые затем выводятся в определенное место в файле CSV.

for i in range (30):
    page = requests.get('https://www.example.com'+ df.loc[i,'ga:pagePath'])
    tree = html.fromstring(page.content.decode('utf-8'))
    postalcode2 = tree.xpath('//span[@itemprop="postalCode"]/text()')
    postalcode = tree.xpath('//span[@itemprop="addressRegion"]/text()')
    if not postalcode2 and not postalcode:
        df.loc[i,'postcode'] = 'Expired Development'
    elif not postalcode2:
        postalcode4 = postalcode[0]
        postalcode4 = postalcode4.replace(' ','')
        postalcode4 = postalcode4.replace(' ','')
        df.loc[i,'postcode'] = postalcode4
    elif not postalcode:
        postalcode3 = postalcode2[0]
        if 'Â' not in postalcode3:
            postalcode3 = postalcode3.replace('\\xa0','')
            postalcode3 = postalcode3.replace(' ','')
        else:
            postalcode3 = postalcode3.replace('\\xa0Â','')
            postalcode3 = postalcode3.replace(' ','')
        df.loc[i,'postcode'] = postalcode3
    elif postalcode2 and postalcode:
        postalcode3 = postalcode2[0]
        if 'Â' not in postalcode3:
            postalcode3 = postalcode3.replace('\\xa0','')
            postalcode3 = postalcode3.replace(' ','')
        else:
            postalcode3 = postalcode3.replace('\\xa0Â','')
            postalcode3 = postalcode3.replace(' ','')
        df.loc[i,'postcode'] = postalcode3

Здеськак я читаю в фрейме данных (используя панд)в порядке и выводит его корректно, без пробелов в CSV.

Однако, когда на веб-странице нет «addressRegion» и только диапазон «postalCode», формат идет с символом Â.Единственное различие между двумя свойствами span состоит в том, что addressRegion - это просто обычный почтовый индекс с пробелом, например, BH12 8HJ, однако postalCode имеет & nbsp;пометьте пространство как пробел, например, «BH12 & nbsp; 8HJ».

Может ли быть причиной проблемы, когда я преобразовываю его в строку и пытаюсь удалить пробел, но я могу »Я не понимаю, почему в CSV будет создан символ Â.

Спасибо за помощь.

PS В теге Nbsp есть пробел, чтобы он не добавлялся вкак пробел в моем вопросе:)

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