nodered清洗数据
时间: 2023-10-13 14:08:00 浏览: 44
对于使用NodeRed进行数据清洗,可以使用一些节点来实现。其中,可以使用"HTML"节点和"Function"节点来清洗数据。
首先,使用"HTML"节点来移除特定的HTML标签和标签内容。可以使用w3lib库中的remove_tags_with_content函数来实现。例如,使用remove_tags_with_content函数来移除span标签及其内容:
```python
from w3lib.html import remove_tags_with_content
a = "<span class=\"dp\">OTEzMjEzMTEzNDY=</span>9<span class=\"dp\">OTEzMjEzMTEzNDY=</span>132131134642891XT"
cleaned_data = remove_tags_with_content(a, which_ones=('span',))
print(cleaned_data) # 输出:9132131134642891XT
```
接下来,可以使用"Function"节点进行进一步的数据处理,例如剔除空数据并调整输出格式。可以使用代码进行数据处理,并使用for循环遍历数据,剔除需要的数据,并调整输出格式。例如:
```python
# 数据处理
def data_process(data):
# 进行数据处理的代码
return X, indexs, df
# 调整后面将要输出的格式
stocks = get_code()
for index in indexs:
for name, code in stocks.items():
if name == index:
del stocks[code]
break
```
另外,可以使用正则表达式对数据进行清洗。例如,使用re模块中的正则表达式清洗HTML标签:
```python
import re
html = '<p class="txt" node-type="feed_list_content" nick-name="人民日报">\n 【<a href="http://s.weibo.com/weibo?q=" target="_blank">#13个求职新方向#</a>!有你心动的职业吗<img src="//img.t.sinajs.cn/t4/appstyle/expression/ext/normal/aa/2018new_bingbujiandan_org.png" title="[并不简单]" alt="[并不简单]" class="face">】近日,人社部、市场监管总局、统计局联合发布13个新职业,既有现在流行的人工智能、<em class="s-color-red">大</em><em class="s-color-red">数据</em>、云计算、物联网等工程技术人员,也有电子竞技员、无人机驾驶员等新颖工种…你心动了吗?哪些学校开设了相关专业值得关注?戳图了解↓↓转给正在求学的TA! </p>'
pre = re.compile('>(.*?)<')
text = ''.join(pre.findall(html))
```