以下代码显示BeautifulSoup.find(text=)
不会搜索包含其他标记的标记。
我不确定是否有办法这样做。
有人能告诉我是否有办法进行这样的搜索?
感谢。
$ cat main.py
#!/usr/bin/env python
# vim: set noexpandtab tabstop=2 shiftwidth=2 softtabstop=-1 fileencoding=utf-8:
from bs4 import BeautifulSoup
import sys
import re
soup = BeautifulSoup(sys.stdin.read(), 'html.parser')
print soup.find('td', text = re.compile(sys.argv[1]))
$ cat main.sh
#!/usr/bin/env bash
# vim: set noexpandtab tabstop=2:
set -v
./main.py 'Overall design' <<EOF
<td nowrap="">Overall design<b>xxx</b></td>
EOF
./main.py 'Overall design' <<EOF
<td nowrap="">Overall design</td>
EOF
$ ./main.sh
./main.py 'Overall design' <<EOF
<td nowrap="">Overall design<b>xxx</b></td>
EOF
None
./main.py 'Overall design' <<EOF
<td nowrap="">Overall design</td>
EOF
<td nowrap="">Overall design</td>