亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

python爬數據,得到一個列表,但怎樣去掉里面的span標簽呢?

瀏覽:75日期:2022-07-11 09:18:11

問題描述

用p6ython3.6爬下了部分數據,但是最后顯示的是含span標簽的列表,當我用get_text、contents等方法,就會報錯。這是為什么呢?最開始返回的結果如下:

[<span>2017.5.2</span>][<span>2017.4.26</span>][<span>2017.4.24</span>][<span>2017.4.19</span>][<span>2017.3.23</span>][<span>2017.3.17</span>][<span>2017.2.14</span>][<span>2017.2.9</span>][<span>2017.2.6</span>][<span>2017.2.6</span>]

我的代碼如下:

import requestsfrom bs4 import BeautifulSoupimport re# def url_list():# for number in range(1,21):# url_links=[]# url='X'.format(i=number)# url_links.append(url)h={'User-Agent':'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.81 Safari/537.36'}r=requests.get('url',headers=h)soup=BeautifulSoup(r.text,’lxml’)for data in soup.find('p',{'class':'list-main-eventset-finan'}).find_all('li'): content=data.find('i',{'class':'cell date'}).find_all('span') print(time)

問題解答

回答1:

bs的API記得不是很清楚了,應該是有可以直接獲取文本的函數的,應該是get_text()這個函數吧。由于你用的是find_all(),那么需要再在返回的結果下做一次遍歷,就是這樣

rs = list()for data in soup.find('p',{'class':'list-main-eventset-finan'}).find_all('li'): contents=data.find('i',{'class':'cell date'}).find_all('span') for content in contents:rs.append(content.get_text())

此外,也可以使用正則表達式來匹配,直接匹配<span>(.*?)<這個pattern。但是也得像上面那樣遍歷這個contens列表才行。

回答2:

題主可以試試 text_content() 方法

回答3:

正則表達式或者split+SUBSTRING也可以,靈活著用

標簽: Python 編程
主站蜘蛛池模板: 亚洲欧美日韩国产一区二区精品 | 美女被啪全免视频软件 | 九九热精品在线观看 | 中国美女一级毛片 | 国产精品免费视频网站 | 欧美日韩不卡中文字幕在线 | 在线观看中文字幕2021 | 快猫在线观看入口免费网站满十八 | 欧洲欧美人成免费观看 | 欧美黄色大片在线观看 | 国产精品主播视频 | 免费观看影院 | 久久精品国产亚洲香蕉 | 亚洲国产一区在线精选 | 日本不卡一区二区三区在线观看 | 国产高清三级 | 精品国产精品久久一区免费式 | jpnesxxx日本| 正在播放avove深夜影院 | 免费国产不卡午夜福在线 | 91亚洲国产系列精品第56页 | 三亚美女一级毛片 | 亚洲在线第一页 | 国产三级黄色 | 国产高清一级毛片在线人 | 特黄特色大片免费播放 | 久久精品国产69国产精品亚洲 | 亚洲欧美日韩v中文在线 | 国产成人精品1024在线 | 欧美 综合 社区 国产 | 欧美一区二区在线观看免费网站 | 另类图片第一页 | 亚洲视频在线观看视频 | 麻豆精品视频网站在线观看 | 亚洲欧美日韩专区一 | 天天躁夜夜躁很很躁2020 | 亚洲一级二级三级 | 精品国产一区二区三区成人 | 亚洲欧美久久精品 | 亚洲国产欧美精品一区二区三区 | a级毛片免费全部播放 |