[英]Remove symbol when crawling data using scrapy
我想從網站上抓取文字。 這是示例代碼:
def parse(self, response):
for kamusset in response.css("div#d1"):
text = kamusset.css("div b::text").extract()
print(dict(text=text))
我要刪除“。” 符號和每個數字符號。 因此,我使用正則表達式。 我更改代碼:
def parse(self, response):
for kamusset in response.css("div#d1"):
text = kamusset.css("div b::text").re(r'[a-z]+')
print(dict(text=text))
我不希望那樣的結果。 我想要這樣:
{'text':['abadi','mengabadi','mengabadikan','pengabadian','keabadian']}。 怎么做?
您可以使用re
抓取的text
進行解析:
import re
text = ['aba.di','meng.a.ba.di','megn.a.ba.di.kan','1','2','peng.a.ba.di.an','ke.a.ba.di.an','1','2']
stack = [re.sub('[^a-zA-Z]+', '', e) for e in text]
text_new = [i for i in stack if i!=""]
print(text_new)
text_new將是:
['abadi', 'mengabadi', 'megnabadikan', 'pengabadian', 'keabadian']
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.