有没有办法遍历带有正则表达式的列表?

时间:2019-10-16 12:36:09

标签: python regex

基本上,我正在尝试从HTML文件列表中抓取所有HTML标签。 当我尝试执行此操作时,出现错误:

  

TypeError:预期的字符串或类似字节的对象。

有没有办法用正则表达式遍历列表?

这是我正在使用的代码:

import pymssql
import re

conn = pymssql.connect(
    host='xxx',
    port=xxx,
    user='xxx',
    password='xxx',
    database='xxxx'
)
cursor = conn.cursor() 
cursor.execute('SELECT 'column' FROM 'table'')

text = cursor.fetchall()

conn.close()

raw = []  
raw.append(text)

str(raw)

x = re.sub('<[^<]+?>', '', raw)

2 个答案:

答案 0 :(得分:1)

错误:

  

TypeError:预期的字符串或类似字节的对象。

指的是raw指向list对象,将其指向字符串。您需要这样做:

raw = str(raw)  # instead of just str(raw)

但是,如果text确实是字符串,为什么不这样做:

x = re.sub('<[^<]+?>', '', text)

有关更多详细信息,请参见str上的文档,下面的引文来自此处:

  

返回对象的str版本。有关详细信息,请参见str()。

答案 1 :(得分:0)

签出BeautifulSoup软件包。这是一个HTML解析器,您可以将其视为普通的python字典。