正则表达式 - Python 中如何用正则匹配中文词组
高洛峰
高洛峰 2017-04-17 13:27:02
0
1
977

情景如下,网页中有一段:

<tr>
    <td class="whitetext">此书刊没有复本</td>
</tr>
<tr>
     <td bgcolor="#FFFFFF" class="whitetext"><font color="red"> 此书刊可能正在订购中或者处理中 </font></td>
</tr>

用 BeautifulSoup4 和 Requests 抓取一段网页内容,如果匹配到有“没有复本” 字样,就抛出异常。

如何实现用正则匹配特定的中文词组呢?
(PS 问:如何在 BeautifulSoup4 中搜索特定的文本内容?不限中文 ~ )

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

membalas semua(1)
伊谢尔伦

代码

#! /usr/bin/env python
# -*- coding: utf-8 -*-

content = """
<tr>
    <td class="whitetext">此书刊没有复本</td>
</tr>
<tr>
     <td bgcolor="#FFFFFF" class="whitetext"><font color="red"> 此书刊可能正在订购中或者处理中 </font></td>
</tr
"""
from bs4 import BeautifulSoup
import re
tag_soup = BeautifulSoup(content)
tag_content = tag_soup.get_text().encode("utf-8")
print re.search(r"没有复本", tag_content)

get_text()从标签中获取所有文字内容,不过是unicode编码,将其用utf-8编码之后,就可以直接用正则表达式搜索。

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!