Heim > Fragen und Antworten > Hauptteil
<a target="blank"href="http://a.b.c.d/abc.php?viewkey=11111111111d5c2a51d1e2&page=1&viewtype=basic&category=rf"></a>
<a target="blank"href="http://a.b.c.d/abc.php?viewkey=6d7a7f6a6e9c2a5191e2&page=1&viewtype=basic&category=rf"></a>
<a target="blank"href="http://a.b.c.d/abc.php?viewkey=6d7a7f6a6e9c2a5191e2&page=1&viewtype=basic&category=rf"></a>
<a target="blank"href="http://a.b.c.d/abc.php?viewkey=6d7a7f6a6e9c2a5191e2&"></a>
<a target="blank"href="http://a.b.c.d/abc"></a>
<a target="blank"href="http://a.b.c.d/123"></a>
Ich möchte den Link in href bekommen
Die ersten drei der 6 Links erfüllen die Bedingungen zum Schreiben des regulären Ausdrucks (d. h. der Link muss den Parameter viewkey page viewtype Category haben)
Der zweite und dritte Link sind gleich. So duplizieren Sie sie (unter Python)
黄舟2017-05-18 10:53:20
# python 2.7
import re
a = '''<a target="blank"href="http://a.b.c.d/abc.php?viewkey=11111111111d5c2a51d1e2&page=1&viewtype=basic&category=rf"></a>
<a target="blank"href="http://a.b.c.d/abc.php?viewkey=6d7a7f6a6e9c2a5191e2&page=1&viewtype=basic&category=rf"></a>
<a target="blank"href="http://a.b.c.d/abc.php?viewkey=6d7a7f6a6e9c2a5191e2&page=1&viewtype=basic&category=rf"></a>
<a target="blank"href="http://a.b.c.d/abc.php?viewkey=6d7a7f6a6e9c2a5191e2&"></a>
<a target="blank"href="http://a.b.c.d/abc"></a>
<a target="blank"href="http://a.b.c.d/123"></a>'''
print set(re.findall('''(?=.*(?:viewkey))(?=.*(?:page))(?=.*(?:viewtype))(?=.*(?:category))href=["']([^'"]+)''', a))
伊谢尔伦2017-05-18 10:53:20
提取前三个链接:
links= re.findall(r'href=\"(.*?=rf)\"',l_string,re.S)
去重:
new_links=set(links)