尝试着用 python3 和 BeautifulSoup4 爬一些内容。
显示登陆之类的,然后使用 BS 的 find_all("tr")功能就都可以找到所有 tr 标签,用遍历打印 result.td.string 的方法,打印每个表格下第一个 td 的标签内容
有一个的 td.string 报错,无法只打印出标签文字内容。只有 None
我把这个 td 的全部内容直接打印出来,出现如下形式:
<td colspan="2">名称:XXX<font color="#E1E100">xxx</font></td>
问题就应该是出在标签内容里的<font color></font>标签,识别失败。
我想到的办法是,大概把这段内容正则匹配,去掉后面的标签,正则不太熟练,想问问 BeautifulSoup 本身的功能能否比较好的解决这一点呢?
其实还有一个比较奇怪的问题,同一个网页,我用网络请求的办法去获取这个网页,解析没问题,当我自己下载了以后,再去用 BeautifulSoup 的 open 方法打开就不行。我记得很早以前我下载了再去解析是可以的……网页编码是 gbk 。
显示登陆之类的,然后使用 BS 的 find_all("tr")功能就都可以找到所有 tr 标签,用遍历打印 result.td.string 的方法,打印每个表格下第一个 td 的标签内容
有一个的 td.string 报错,无法只打印出标签文字内容。只有 None
我把这个 td 的全部内容直接打印出来,出现如下形式:
<td colspan="2">名称:XXX<font color="#E1E100">xxx</font></td>
问题就应该是出在标签内容里的<font color></font>标签,识别失败。
我想到的办法是,大概把这段内容正则匹配,去掉后面的标签,正则不太熟练,想问问 BeautifulSoup 本身的功能能否比较好的解决这一点呢?
其实还有一个比较奇怪的问题,同一个网页,我用网络请求的办法去获取这个网页,解析没问题,当我自己下载了以后,再去用 BeautifulSoup 的 open 方法打开就不行。我记得很早以前我下载了再去解析是可以的……网页编码是 gbk 。