解析后从列表项中删除空格
Removing spaces from list items after parsing
我无法在解析后从列表项中删除空格。这是完整的工作代码。
from bs4 import BeautifulSoup
from selenium import webdriver
import pandas as pd
import xlwings as xw
driver = webdriver.PhantomJS()
driver.get("http://www.cbr.ru/hd_base/dv/?P1=4")
driver.find_element_by_id('UniDbQuery_FromDate').clear()
driver.find_element_by_id('UniDbQuery_FromDate').send_keys('11.12.2017')
driver.find_element_by_id('UniDbQuery_ToDate').clear()
driver.find_element_by_id('UniDbQuery_ToDate').send_keys('13.12.2017')
driver.find_element_by_id("UniDbQuery_searchbutton").click()
z=driver.page_source
driver.quit()
soup=BeautifulSoup(z)
x=[]
for tag in soup.tbody.findAll('td'):
x.append(tag.text)
y=x[1::2]
y
['381 970,85', '370 534,87', '374 626,19']
以下代码不删除空格。
for i in y:
i=i.replace(' ', '')
y
['381 970,85', '370 534,87', '374 626,19']
另一个代码也没有清除空格。
y = [x.strip(' ') for x in y]
y
['381 970,85', '370 534,87', '374 626,19']
请帮忙解决这个问题。
但是,如果您没有尝试过您的代码,请不要给出建议。
我认为问题出在编码上。但是这个假设,因为我是编程新手。
y=['381 970,85', '370 534,87', '374 626,19']
y=' '.join(y)
y.replace(',',' ').split()
输出:
['381', '970', '85', '370', '534', '87', '374', '626', '19']
y = ['381 970,85', '370 534,87', '374 626,19']
lst2 = [e.replace(' ', '') for e in y]
print(lst2)
你的第二种情况几乎是正确的。但是,.strip
不会删除字符串中的空格。
在您的第一种情况下,字符串被分配给 i
,然后替换的结果稍后被分配给 i
。然后它被扔掉了。它没有进入列表。
我无法在解析后从列表项中删除空格。这是完整的工作代码。
from bs4 import BeautifulSoup
from selenium import webdriver
import pandas as pd
import xlwings as xw
driver = webdriver.PhantomJS()
driver.get("http://www.cbr.ru/hd_base/dv/?P1=4")
driver.find_element_by_id('UniDbQuery_FromDate').clear()
driver.find_element_by_id('UniDbQuery_FromDate').send_keys('11.12.2017')
driver.find_element_by_id('UniDbQuery_ToDate').clear()
driver.find_element_by_id('UniDbQuery_ToDate').send_keys('13.12.2017')
driver.find_element_by_id("UniDbQuery_searchbutton").click()
z=driver.page_source
driver.quit()
soup=BeautifulSoup(z)
x=[]
for tag in soup.tbody.findAll('td'):
x.append(tag.text)
y=x[1::2]
y
['381 970,85', '370 534,87', '374 626,19']
以下代码不删除空格。
for i in y:
i=i.replace(' ', '')
y
['381 970,85', '370 534,87', '374 626,19']
另一个代码也没有清除空格。
y = [x.strip(' ') for x in y]
y
['381 970,85', '370 534,87', '374 626,19']
请帮忙解决这个问题。 但是,如果您没有尝试过您的代码,请不要给出建议。
我认为问题出在编码上。但是这个假设,因为我是编程新手。
y=['381 970,85', '370 534,87', '374 626,19']
y=' '.join(y)
y.replace(',',' ').split()
输出:
['381', '970', '85', '370', '534', '87', '374', '626', '19']
y = ['381 970,85', '370 534,87', '374 626,19']
lst2 = [e.replace(' ', '') for e in y]
print(lst2)
你的第二种情况几乎是正确的。但是,.strip
不会删除字符串中的空格。
在您的第一种情况下,字符串被分配给 i
,然后替换的结果稍后被分配给 i
。然后它被扔掉了。它没有进入列表。