君子好逑 发表于 2020-5-10 11:39:09

正则表达式

import requests
import re
from bs4 import BeautifulSoup

html = requests.get(url='http://58921.com/alltime/2020')
html.encoding = 'utf-8'
html = html.text
#print(html)

rule = re.compile(r'<td><a title=".*?" href="/film/.*?">.*?</a></td>')
title = re.findall(rule,html)
print(title)
前面的html没问题,就是title打印出来一直是个空列表,求大佬解惑


悠悠2264 发表于 2020-5-10 11:45:51

本帖最后由 悠悠2264 于 2020-5-10 11:48 编辑

这个正则表达式的href和title反掉了,所以匹配不到(网站上是先href后title,你写的则是匹配先title后href)。
应改成:
rule = re.compile(r'<td><a href="/film/.*?" title=".*?">.*?</a></td>')

君子好逑 发表于 2020-5-10 11:49:21

悠悠2264 发表于 2020-5-10 11:45
这个正则表达式的href和title反掉了,所以匹配不到(网站上是先href后title,你写的则是匹配先title后href ...

谢谢大佬{:10_257:}
页: [1]
查看完整版本: 正则表达式