从df变量中提取HTML信息

Extract HTML information from df variable(从df变量中提取HTML信息)
本文介绍了从df变量中提取HTML信息的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

亲爱的堆栈溢出社区

这是我第一次在这里提问。希望你能放我一马。 以下是对问题的描述:

  1. 我使用ogr2org将KML文件转换为CSV
    ogr2ogr -f CSV output.csv 'some KML file'.kml
  2. 然后我读入了 pandas 的CSV文件
    data = pd.read_csv('output.csv')
  1. 删除一些奇怪的专栏后,我的结果如下:
In[1]: data.head(8)
Out[1]: 
                                          description   ID
0   <div class="googft-info-window">
<b>ID:</b> 1...   1
1   <div class="googft-info-window">
<b>ID:</b> 1...   10
2   <div class="googft-info-window">
<b>ID:</b> 1...   100
3   <div class="googft-info-window">
<b>ID:</b> 1...   1000
4   <div class="googft-info-window">
<b>ID:</b> 1...   10000
5   <div class="googft-info-window">
<b>ID:</b> 1...   10001
6   <div class="googft-info-window">
<b>ID:</b> 1...   10002
7   <div class="googft-info-window">
<b>ID:</b> 1...   10003
  1. 说明变量下的代表性字符串如下:
    <div class=""googft-info-window"">
    <b>ID:</b> 1<br>
    <b>class:</b> 1<br>
    <b>fold:</b> 5
    </div>

我的问题是如何使用所有<b>...<>作为一个列名从"Description"列中提取干净的信息并将其添加到同一行。

谢谢。 附注:请告诉我将来如何改进我的问题。

推荐答案

您可以将str.extractall与...

df[['ID1', 'class', 'fold']] = df['description'].str.extractall(r'</b>s?(d+)<').unstack()

str.findall类似于...

df[['ID1', 'class', 'fold']] = df['description'].str.findall(r'</b>s?(w+)<', expand=True)

它们基于类似于...

的字符串
<div class=""googft-info-window""><b>ID:</b> 1<br><b>class:</b> 1<br><b>fold:</b> 5</div>

正则表达式匹配您需要从字符串中提取的三个值,并传递给=符号左侧的三个新列。

正则表达式:https://regex101.com/r/wVl2cI/1

这是假定您只有三个要查找的值,并且HTML都是相同的。

输出(示例):

    description             ID1    class    fold
0   <div class=""googft-..  1      1        1
1   <div class=""googft-..  1      1        1
2   <div class=""googft-..  5      5        5

这篇关于从df变量中提取HTML信息的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

js文件上传前的预览和删除实例代码,具体如下: !DOCTYPE htmlhtml lang="en" head meta charset="UTF-8" / meta http-equiv="X-UA-Compatible" content="IE=edge" / meta name="viewport" content="width=device-width, initial-scale=1.0" / title文件上传预览和删除/title style #img-box{display: flex;
element el-tree树结构刷新后保留展开状态解决方法 我们在使用element的el-tree组件的时候,当我们给树结构重新赋值后,树节点就全部自动合上了。所以我们要记录展开状态,方法如下 html代码如下: el-tree ref="tree" :data="treeList" :highlight-current="true" :
js输出当前日期和时间的实例代码,具体实例代码如下,有兴趣的朋友可以尝试运行下。 !doctype htmlhtml lang="en" head meta charset="UTF-8" title获取当前时间/title /head body script type="text/javascript" /** *获取当前时间 *format=1精确到天 *format=2精确到秒 */ function
html页面:添加这一行 contentType: application/x-www-form-urlencoded !DOCTYPE htmlhtml lang="en"head meta charset="UTF-8" meta name="viewport" content="width=device-width, initial-scale=1.0" title显示小区信息/title script src="https://cdn.staticfile.org/jquery/1.10.2/jq
p5.js WebGL 3d graphics covered by 2d background when rotated(P5.js旋转时被2D背景覆盖的WebGL 3D图形)
Static vector field with classic arrows at every point on p5.js(P5.js上每个点都有经典箭头的静态向量场)