鱼C论坛

 找回密码
 立即注册
查看: 1105|回复: 2

正则表达式问题,待解决

[复制链接]
发表于 2018-5-18 16:37:00 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
import requests
import re
content=requests.get('https://book.douban.com/').text
# print(content)
pattern=re.compile('<li.*?cover.*?href="(.*?)".*?title="(.*?)".*?more-meta.*?author">(.*?)</span>.*?year">(.*?)</span>.*?</li>',re.S)
# pattern=re.compile('<li.*?"cover".*?href="(.*?)".*?</li>',re.S)
results=re.findall(pattern,content)
# print(results)
# print("ok")
for result in results:
    # url,name,author,date=result
    # author=re.sub('\s','',author)
    # date=re.sub('\s','',date)
    # print(url,name,author.date)
    print(result.strip())


帮帮看看这个代码,有什么问题? 谢谢

为什么跑不出来东西。。?
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2018-5-18 16:44:24 | 显示全部楼层
这中文编码忒难弄,好多网站都不好爬了
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-5-18 23:09:53 | 显示全部楼层
  1. import requests,re
  2. content=requests.get('https://book.douban.com/').text
  3. # print(content)
  4. #pattern=re.compile('<li.*?cover.*?href="(.*?)".*?title="(.*?)".*?more-meta.*?author">(.*?)</span>.*?year">(.*?)</span>.*?</li>',re.S)
  5. pattern = re.compile(r'''<div class=".*?">
  6.               <div class="title">
  7.                 <a class="" href="(.*?)"
  8.                   title=".*?">(.*?)</a>.*?<div class="author">
  9.                 (.*?)
  10.               </div>.*?<span class="year">
  11.                     (.*?)
  12.                   </span>''',re.S)
  13. results =re.findall(pattern,content)
  14. # print(results)
  15. # print("ok")
  16. for result in results:
  17.     url,name,author,date=result
  18.     author=re.sub('\s','',author)
  19.     #date=re.sub('\s','',date)
  20.     #print(url,name,author.date)
  21.     print(result)
复制代码


应该是可以跑出来吧,就是很慢很慢,正则还是不要写的这么省略吧,
新手代码,勿喷
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-12-30 07:48

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表