2015-07-24 2 views
0

Я боролся в течение двух дней, но не могу понять это , Вот мой код:Как удалить u ' n n n n n n n n n' и u ' xa0' из списка python

def find_name(): 
    i = 0 
    while i != len(links): 
     url = links[i] 
     r = requests.get(url) 
     html = r.content 
     soup = BeautifulSoup(html) 
     for n in soup.find_all('tr'): 
      td = n.find('td') 
      if td: 
       last_name.append(td.text) 
     i = i+1 
    del last_name[0:5] 
    return last_name 

Он генерирует список последних имен, но есть множественный и «\ xa0» и «/ и» \ п \ п \ п \ п \ п в списке я хочу их прошло. Я пробовал все, что знал. Как удалить его, проверив каждый элемент, но это дает мне значение error list.remove (x): x not in list, я также попытался сравнить каждый элемент с - u '\ n \ n \ n \ n \ n \ n \ n \ n \ n ', а затем добавьте в список. Но это не сработало. Есть еще вопросы о stackoverflow, но все они говорят о строке.

ответ

1

Вы могли бы назвать str.strip() по тексту, прежде чем добавить его в список last_name.

  if td and td.text.strip(): 
       last_name.append(td.text) 
+0

Это сработало, спасибо. – PankajKushwaha

1

Вы можете использовать список понимание и метод strip:

# Your code 
last_name = [name for name in last_name if name.strip()] 
return last_name 
Смежные вопросы