如何用python把返回的html提取相应的内容到excel

需要登录,怎么把网页的内容提取出来写到excel里面,返回html是这样的

<td height="20" align="center">1</td>
<td align="center">产品</td>
<td align="center">red</td>
<td align="center">单价</td>
<td align="center">价格</td>
<td align="center">备注</td>
-----
<td height="20" align="center">2</td>
<td align="center">产品</td>
<td align="center">red</td>
<td align="center">单价</td>
<td align="center">价格</td>
<td align="center">备注</td>
...

如何才能把他们逐行写入excel

阅读 5.1k
3 个回答

正则提取出多个列表,然后利用 Pandas 的 DataFrame 数据类型写入 excel,具体格式你自己安排,这里给出个基本示例:

text = """<td height="20" align="center">1</td>
<td align="center">产品</td>
<td align="center">red</td>
<td align="center">单价</td>
<td align="center">价格</td>
<td align="center">备注</td>
-----
<td height="20" align="center">2</td>
<td align="center">产品</td>
<td align="center">red</td>
<td align="center">单价</td>
<td align="center">价格</td>
<td align="center">备注</td>
"""

import pandas as pd
import re

p = re.compile('>(\S+)</td>')
q = p.findall(text)
table = pd.read_excel(r'D:\test.xlsx')    #事先在D盘建立该空excel
table['your title'] = pd.Series(q)
table.to_excel(r'D:\test.xlsx')

结果:
图片描述

一个 Series 就是一列,你可以根据需要提取出多个不同属性列的数据,然后写入table 最终导入excel。

抓取网页上的内容,正则匹配,然后操作execl,python都有第三方扩展的嘛

Python可以调用 xlwt 库,写excel

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题