錯誤方法:對於去除到處存在的這些符號,使用函數 normalize-space()是錯誤的
result = html.xpath('normalize-space(//tbody//a/text())')#返回list類型
print(result)
結果:只得到了第一個,後面被全部去掉了
有效的方法:
情況(1)
使用lstrip函數(注意是string)
result_grade = html.xpath('...../text()') #返回list類型
result_grade = ''.join(result_grade) #轉爲str類型
print("危害級別:",result_grade.lstrip())
輸出:
情況(2)
list = ['\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t\t\t\t\t \t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t', '\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t中\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t(', ')\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t\t\t\t']
print(list)
str = ''.join(list)
a = str.strip()
print(a)
在Python中字符串處理函數裏有三個去空格(包括’\n’, ‘\r’, ‘\t’, ’ ')的函數:
strip 同時去掉左右兩邊的空格
lstrip 去掉左邊的空格
rstrip 去掉右邊的空格
string.replace(’ ', ‘’) 替換以去掉中間的空格
list = ['\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t\t\t\t\t \t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t', '\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t中\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t(', ')\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t\t\t\t']
str = ''.join(list)
a = str.replace('(', '')
a = a.replace(')', '')
a = a.strip()
print(a)
得到
記錄