为了账号安全,请及时绑定邮箱和手机立即绑定

python正则爬虫无响应

python正则爬虫无响应

不负相思意 2018-10-05 19:11:42

import requests

import re


content = requests.get('https://book.douban.com/').text

pattern=re.compile('<li.*?"cover".*?href=(.*?)title=(.*?).*"author">(.*?)</div>.*"year">(.*?)</span></li>',re.S)

results = re.findall(pattern, content)

for result in results:

    url, name, author, date = result

    author = re.sub('\s', '', author)

    date = re.sub('\s', '', date)

    print(url, name, author, date)

无响应,大家能告诉我什么原因吗?谢谢啦。

查看完整描述

2 回答

?
qq_花开花谢_0

TA贡献1477条经验 获得超5个赞

.*太多了,算法的时间太长

result = re.findall(pattern, content[15000:20000]) # 这个都是秒级的了,何况content长度134383

而且时间复杂度非线性 5000长度,3~4秒 134383长度,估计你跑一天能出来

建议分步正则,一次最好不要超过两个.*,一步一步匹配出你要的结果


查看完整回答
1 反对 回复 2018-10-14
?
弑天下

TA贡献0条经验 获得超7个赞

我觉得你要是想爬些数据的话,还是不要这么爬了,另外豆瓣有api的。

查看完整回答
反对 回复 2018-10-14

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信