四、(3)补充beautifulsoup、re正则表达式、标签解析

news2024/12/23 11:09:42

四、(3)补充beautifulsoup、re正则表达式、标签解析

  • beautifulsoup
  • re正则表达式
  • 正则提取
  • 标签解析

beautifulsoup

补充关于解析的知识
还需要看爬虫课件
如何定位文本或者标签,是整个爬虫中非常重要的能力
无论find_all()还是select()选择器是很重要的

下方为baidu.com简单的素材
baidu.html

<!DOCTYPE html>
<html>
<head>
    <meta content="text/html;charset=utf-8" http-equiv="content-type" />
    <meta content="IE=Edge" http-equiv="X-UA-Compatible" />
    <meta content="always" name="referrer" />
    <link href="https://ss1.bdstatic.com/5eN1bjq8AAUYm2zgoY3K/r/www/cache/bdorz/baidu.min.css" rel="stylesheet" type="text/css" />
    <title>百度一下,你就知道 </title>
</head>
<body link="#0000cc">
  <div id="wrapper">
    <div id="head">
        <div class="head_wrapper">
          <div id="u1">
            <a class="mnav" href="http://news.baidu.com" name="tj_trnews"><!--新闻--></a>
            <a class="mnav" href="http://news.baidu.com" name="tj_trnews">新闻</a>
            <a class="mnav" href="https://www.hao123.com" name="tj_trhao123">hao123</a>
            <a class="mnav" href="http://map.baidu.com" name="tj_trmap">地图</a>
            <a class="mnav" href="http://v.baidu.com" name="tj_trvideo">视频</a>
            <a class="mnav" href="http://tieba.baidu.com" name="tj_trtieba">贴吧</a>
            <a class="bri" href="//www.baidu.com/more/" name="tj_briicon" style="display: block;">更多产品 </a>
          </div>
        </div>
    </div>
  </div>
</body>
</html>

模拟爬虫爬取到网页后,如就想要里面的文字,里面的连接,或者指定某个样子的文字,某种类型,就需要匹配的工具来帮助

#-*- codeing = utf-8 -*- 
#@Time : 2020/11/21 16:00
#@Author : 招财进宝
#@File : testBs4.py
#@Software: PyCharm


'''
BeaufifulSoup 将复杂HTML文档转换成一个复杂的树形结构,每个节点都是python对象,所有对象可以归纳为4种:

-Tag
-NavigableString
-BeautifulSoup
-Comment
'''


from bs4 import BeautifulSoup

file = open("./baidu.html","rb")        #以rb,readbytes(二进制读取)的方式读取某个文件,读到内存中
html = file.read()                      #将文件内容读取到对象html中   或者 html = file.read() .decode("utf-8")
bs = BeautifulSoup(html,"html.parser")                #使用对象bs帮助解析文档,使用解析器html.parser解析上面的文档

'''
#print(bs.title)
print(bs.a)                             #使用此种方式时,拿到的是第一个标签及其所有内容<a class="mnav" href="http://news.baidu.com" name="tj_trnews"><!--新闻--></a>
#print(bs.head)
print(type(bs.a))                #<class 'bs4.element.Tag'>
#1.Tag(常用排名3) 标签及其内容:只能拿到它所找到的第一个内容

print(bs.title.string)              #百度一下,你就知道 
print(type(bs.title.string))        #<class 'bs4.element.NavigableString'>
#2.NavigableString(常用排名2) 标签里的内容(字符串)
'''

'''
#可以快速拿到一个标签中的所有属性
print(bs.a.attrs)                   #里面是键值对{'class': ['mnav'], 'href': 'http://news.baidu.com', 'name': 'tj_trnews'}
print(type(bs.a.attrs))             #<class 'dict'>,字典的方式

print(type(bs))                     #<class 'bs4.BeautifulSoup'>
#3.BeautifulSoup(最常用排名第一)     表示整个文档,bs就是整个文档的内容,可以对bs直接操作
print(bs)  
'''

'''
print(bs.a.string)          #新闻,本来是<!--新闻-->,但注释没了
print(type(bs.a.string))    #<class 'bs4.element.Comment'>
#4.Comment   是一个特殊的NavigableString,但输出的内容会不包含注释符号
'''

#---------------------------------------------------(以下是应用)

#文档的遍历(将文档中相似的找到)(全部找到,此处了解,以后用到再看)
#print(bs.head.contents)         #返回了一个列表,将head中所有标签,以列表的形式组装
#print(bs.head.contents[1])      #使用列表下标的方式


#文档的搜索(希望根据文字搜所,文字结构搜索,特点搜索)(重点,拿到特定的内容)
#如何在HTML中定位我们想要的内容
'''
#(1)find_all()(最经常使用的)
#字符串过滤:会查找与字符串完全匹配的内容
t_list = bs.find_all("a")           #能够查找所有的a标签,必须是单个a,不是只要含有a的就可以,放入列表中
print(t_list)

#正则表达式搜索:使用search()方法来匹配内容
import re
t_list = bs.find_all(re.compile("a"))   #正则表达式编译一个对象,re.compile("a")。再使用find_all寻找
#此处是将所有含有a的字母的标签            ,正则匹配某个标签及其内容,只要标签含有a,就将其及其内容找到
print(t_list)
'''

'''
#方法:传入一个函数(方法),根据函数的要求来搜索(了解即可)
def name_is_exists(tag):
    return tag.has_attr("name")         #传入标签tag,返回“name”的值的

t_list= bs.find_all(name_is_exists)
print(t_list)
'''

'''
#2.kwargs  参数
#t_list = bs.find_all(id = "head")       #这里传入的不再是具体规则,而是参数
t_list = bs.find_all(href="http://news.baidu.com")
#t_list = bs.find_all(class_=True)           #只要class存在的就将其及其子内容显示

for item in t_list:
    print(item)
'''

'''
#3.text 参数

#t_list = bs.find_all(text = "hao123")           #找到一个特定文本的内容就打印出来
#t_list = bs.find_all(text = ["hao123","地图","贴吧"])       #也可以找到列表

import re
#使用正则表达式来查找包含特定文本的内容(标签里的字符串)
t_list = bs.find_all(text = re.compile("\d"))       #"\d" 表示数字,将所有是数字文本找到

for item in t_list:
    print(item)
'''

'''
#4.limit  参数
t_list = bs.find_all("a",limit=3)           #limit可以限定你到底获取多少个

for item in t_list:
    print(item)
'''

'''
#css选择器
#t_list = bs.select("title")     #通过标签来查找
#t_list = bs.select(".mnav")         #“.”表示类名查找,后面是类名,class="mnav"
#t_list = bs.select("#u1")           #通过id来查找<div id="u1">
#t_list = bs.select("a[class='bri']")    #通过a标签的属性class='bri'查找
#t_list = bs.select("head > title")      #通过子标签来查找,将head标签下的title找到
# for item in t_list:
#     print(item)

t_list = bs.select(".mnav ~ .bri")          #跟mnav是兄弟的一个标签,而且这个兄弟是bri
print(t_list[0].get_text())
'''

re正则表达式

判断写的字符串是否符合标准,如邮箱是否以邮箱的格式结尾,如是否有@或者.com等
.*@126.com

史上最全常用正则表达式大全
https://www.cnblogs.com/fozero/p/7868687.html
里面有各个各样的格式,可以应用参考
在这里插入图片描述

先看上方的
abc* ab是必须存在的,后面的c可以有0个,也可以有无限个
abc+ ab是必须存在的,后面的c至少1个,也可以有无限个

正则表达式,符号组合形成固定模式
在这里插入图片描述

正则表达式基本是表示一位的字符
\d 表示单个数字
\w 表示大写A-Z,小写a-z,数字0-9,再加上下划线,很多国外的网站的用户名必须是如此

正则表达式,在各个语言中都有对应的库可以使用
在这里插入图片描述

只有match、findall、sub等用的最多

在这里插入图片描述

需要掌握
re.l先忽略大小写然后再进行比较
re.S扩大了范围,将包括换行符在内的字符也进行匹配

#-*- codeing = utf-8 -*- 
#@Time : 2020/11/23 9:08
#@Author : 招财进宝
#@File : testRe.py
#@Software: PyCharm


#正则表达式:字符串模式(判断字符串是否符合一定的标准)

import re

'''
#创建模式对象
pat = re.compile("AA")      #此处的AA是正则表达式,用来取验证其他的字符串

m = pat.search("CBA")      #search字符串被校验的内容
print(m)                    #None
m = pat.search("ABCAA")      #search字符串被校验的内容
print(m)                    #<re.Match object; span=(3, 5), match='AA'>   ,左闭右开,[3,5)
m = pat.search("ABCAADDCCAAA")      #search字符串被校验的内容
print(m)                        #使用search方式只能找到第一个找到的AA,<re.Match object; span=(3, 5), match='AA'>  
'''

#没有模式对象
# m = re.search("asd","Aasd")         #前面的字符串是规则(模板),后面的字符串是被校验的对象
# print(m)


#print(re.findall("a","ASDaDFGAa"))      #前面的字符串是规则,后面的字符串是被校验的对象
                                    # 得到列表['a', 'a'],找到所有符合此标准的字符串

#print(re.findall("[A-Z]","ASDaDFGAa"))  #找一个大写字母,将所有的大写字母一个个的找出来['A', 'S', 'D', 'D', 'F', 'G', 'A']

#print(re.findall("[A-Z]+","ASDaDFGAa")) #[A-Z]+,A-Z中至少出现一个字母,但是出现多个也是可以的没有问题的['ASD', 'DFGA']

#sub 起到分割替换的作用

#print(re.sub("a","A","abcdcasd"))       #找到a用A替换,第一个是被替换的对象,第二个是要换成的对象,在第三个字符串中找到
#在以后的换行等操作,可以使用sub替换成空格,这样就不换行了,等等替换操作

#建议在正则表达式中,被比较的字符串前面加上r,不用担心转义字符的问题
a=r"\aabd-\'"
b="\aabd-\'"
print(a,b)              #\aabd-\' _x0007_abd-'

正则提取

正则表达式和标签解析是可以相互嵌套的

#爬取网页
def getData(baseurl):
    datalist=[]
    for i in range(0,10):               #此处是爬取10页是数据,每页有25个电影数据((0,10)左闭,右开)
        url = baseurl + str(i*25)       #每一页的url后的起始位置=页数*25
        html = askURL(url)              #保存获取到的网页源码

        # 2.逐一解析数据(每个网页解析一下)
        soup = BeautifulSoup(html,"html.parser")     #使用html解析器html.parser解析html
# find_all()查找符合要求的字符串,形成列表
        for item in soup.find_all('div',class_="item"):      #class是个类别需要加下划线,将及时div又是class_="item"的标签找到
    print(item)

    return datalist      #返回数据列表

在这里插入图片描述

在这里插入图片描述

<div class="item">
<div class="pic">
<em class="">1</em>
<a href="https://movie.douban.com/subject/1292052/">
<img alt="肖申克的救赎" class="" src="https://img2.doubanio.com/view/photo/s_ratio_poster/public/p480747492.jpg" width="100"/>
</a>
</div>
<div class="info">
<div class="hd">
<a class="" href="https://movie.douban.com/subject/1292052/">
<span class="title">肖申克的救赎</span>
<span class="title"> / The Shawshank Redemption</span>
<span class="other"> / 月黑高飞(港)  /  刺激1995(台)</span>
</a>
<span class="playable">[可播放]</span>
</div>
<div class="bd">
<p class="">
                            导演: 弗兰克·德拉邦特 Frank Darabont   主演: 蒂姆·罗宾斯 Tim Robbins /...<br/>
                            1994 / 美国 / 犯罪 剧情
                        </p>
<div class="star">
<span class="rating5-t"></span>
<span class="rating_num" property="v:average">9.7</span>
<span content="10.0" property="v:best"></span>
<span>2192162人评价</span>
</div>
<p class="quote">
<span class="inq">希望让人自由。</span>
</p>
</div>
</div>
</div>
findLink = re.compile(r'a href="(.*?)">')         #生成正则表达式对象,表示规则(字符串的模式),用来匹配所有的链接

def getData(baseurl):
    datalist=[]
    for i in range(0,1):               #此处是爬取10页是数据,每页有25个电影数据((0,10)左闭,右开)
        url = baseurl + str(i*25)       #每一页的url后的起始位置=页数*25
        html = askURL(url)              #保存获取到的网页源码

        # 2.逐一解析数据(每个网页解析一下)
        soup = BeautifulSoup(html,"html.parser")     #使用html解析器html.parser解析html
        # find_all()查找符合要求的字符串,形成列表
        for item in soup.find_all('div',class_="item"):      #class是个类别需要加下划线,将及时div又是class_="item"的标签找到
            #print(item)    #测试:查看电影item全部信息
            #print(type(item))
            data=[]         #保存一部电影的所有信息
            item = str(item)    #str将item变成字符串
            #print(item)
            #print(type(item))

            #接下来可以使用正则表达式对字符串进行解析了
            link = re.findall(findLink,item)[0]         #re库用来通过正则表达式查找指定的字符串,获取两个相同的链接中的第一个
            print(link)


    return datalist      #返回数据列表

获取链接
在这里插入图片描述

标签解析

Beautifulsoup

<div class="item">
<div class="pic">
<em class="">1</em>
<a href="https://movie.douban.com/subject/1292052/">
<img alt="肖申克的救赎" class="" src="https://img2.doubanio.com/view/photo/s_ratio_poster/public/p480747492.jpg" width="100"/>
</a>
</div>
<div class="info">
<div class="hd">
<a class="" href="https://movie.douban.com/subject/1292052/">
<span class="title">肖申克的救赎</span>
<span class="title"> / The Shawshank Redemption</span>
<span class="other"> / 月黑高飞(港)  /  刺激1995(台)</span>
</a>
<span class="playable">[可播放]</span>
</div>
<div class="bd">
<p class="">
                            导演: 弗兰克·德拉邦特 Frank Darabont   主演: 蒂姆·罗宾斯 Tim Robbins /...<br/>
                            1994 / 美国 / 犯罪 剧情
                        </p>
<div class="star">
<span class="rating5-t"></span>
<span class="rating_num" property="v:average">9.7</span>
<span content="10.0" property="v:best"></span>
<span>2192162人评价</span>
</div>
<p class="quote">
<span class="inq">希望让人自由。</span>
</p>
</div>
</div>
</div>
#影片详情链接的规则
findLink = re.compile(r'a href="(.*?)">')         #生成正则表达式对象,表示规则(字符串的模式),用来匹配所有的链接
#影片 图片的链接
findImgSrc = re.compile(r'<img.*src="(.*?)"',re.S)  #re.S忽略里面的换行符,让换行符包含在字符中
#影片片名
findTitle = re.compile(r'<span class="title">(.*)</span>')
#影片的评分
findRating = re.compile(r'<span class="rating_num" property="v:average">(.*)</span>')
#找到评价人数
findJudge =  re.compile(r'<span>(\d*)人评价</span>')
#找到概况
findIng = re.compile(r'<span class="inq">(.*)</span>')
#找到影片的相关内容
findBd = re.compile(r'<p class="">(.*)</p>',re.S)   #re.S忽略里面的换行符,让换行符包含在字符中
规则已经找到,如何


#爬取网页
def getData(baseurl):
    datalist=[]
    for i in range(0,10):               #此处是爬取10页是数据,每页有25个电影数据((0,10)左闭,右开)
        url = baseurl + str(i*25)       #每一页的url后的起始位置=页数*25
        html = askURL(url)              #保存获取到的网页源码

        # 2.逐一解析数据(每个网页解析一下)
        soup = BeautifulSoup(html,"html.parser")     #使用html解析器html.parser解析html
        # find_all()查找符合要求的字符串,形成列表
        for item in soup.find_all('div',class_="item"):      #class是个类别需要加下划线,将及时div又是class_="item"的标签找到
            #print(item)    #测试:查看电影item全部信息
            #print(type(item))
            data=[]         #保存一部电影的所有信息
            item = str(item)    #str将item变成字符串
            #print(item)
            #print(type(item))
            #break              #用来测试第一条item

            #接下来可以使用正则表达式对字符串进行解析了
            #影片详情的链接
            link = re.findall(findLink,item)[0]         #re库用来通过正则表达式查找指定的字符串,获取两个相同的链接中的第一个
            #print(link)
            data.append(link)                           #添加链接

            imgSrc = re.findall(findImgSrc,item)[0]
            data.append(imgSrc)                         #添加图片

            titles = re.findall(findTitle,item)     #片名可能只有一个中文名,没有外文名
            if(len(titles)==2) :
                ctitle =titles[0]                   #中文名的标题
                data.append(ctitle)
                otitle = titles[1].replace("/","")  #去掉无关的符号
                data.append(otitle)                 #添加外国名
            else:
                data.append(titles[0])              #将第一个中文名填入
                data.append(' ')                    #留空,用于占据外国名的位置,防止位置不对称

            rating = re.findall(findRating,item)[0]
            data.append(rating)                     #添加评分

            judgeNum = re.findall(findJudge,item)[0]
            data.append(judgeNum)                   #添加评价人数

            inq = re.findall(findIng,item)[0]
            #(不一定每个电影都有概述)
            if len(inq) !=0:
                inq=inq[0].replace("。","")      #去掉句号
                data.append(inq)                        #添加概述
            else:
                data.append(" ")                  #留空

            bd = re.findall(findBd,item)[0]
            bd = re.sub('<br(\s+)?/>(\s+)?'," ",bd)      #去掉<br/>
            bd = re.sub('/'," ",bd)                 #替换/
            data.append(bd.strip())                 #去掉前后的空格

            datalist.append(data)                   #把处理好的一部电影信息放入datalist
    print(datalist)
    return datalist      #返回数据列表
[['https://movie.douban.com/subject/1292052/', 'https://img2.doubanio.com/view/photo/s_ratio_poster/public/p480747492.jpg', '肖申克的救赎', '\xa0\xa0The Shawshank Redemption', '9.7', '2192734', '希', '导演: 弗兰克·德拉邦特 Frank Darabont\xa0\xa0\xa0主演: 蒂姆·罗宾斯 Tim Robbins  ... 1994\xa0 \xa0美国\xa0 \xa0犯罪 剧情'], ['https://movie.douban.com/subject/1291546/', 'https://img3.doubanio.com/view/photo/s_ratio_poster/public/p2561716440.jpg', '霸王别姬', ' ', '9.6', '1626317', '风', '导演: 陈凯歌 Kaige Chen\xa0\xa0\xa0主演: 张国荣 Leslie Cheung   张丰毅 Fengyi Zha... 1993\xa0 \xa0中国大陆 中国香港\xa0 \xa0剧情 爱情 同性'], ['https://movie.douban.com/subject/1292720/', 'https://img2.doubanio.com/view/photo/s_ratio_poster/public/p2372307693.jpg', '阿甘正传', '\xa0\xa0Forrest Gump', '9.5', '1653798', '一', '导演: 罗伯特·泽米吉斯 Robert Zemeckis\xa0\xa0\xa0主演: 汤姆·汉克斯 Tom Hanks   ... 1994\xa0 \xa0美国\xa0 \xa0剧情 爱情'], ['https://movie.douban.com/subject/1295644/', 'https://img3.doubanio.com/view/photo/s_ratio_poster/public/p511118051.jpg', '这个杀手不太冷', '\xa0\xa0Léon', '9.4', '1838229', '怪', '导演: 吕克·贝松 Luc Besson\xa0\xa0\xa0主演: 让·雷诺 Jean Reno   娜塔莉·波特曼 ... 1994\xa0 \xa0法国 美国\xa0 \xa0剧情 动作 犯罪'], ['https://movie.douban.com/subject/1292722/', 'https://img9.doubanio.com/view/photo/s_ratio_poster/public/p457760035.jpg', '泰坦尼克号', '\xa0\xa0Titanic', '9.4', '1608683', '失', '导演: 詹姆斯·卡梅隆 James Cameron\xa0\xa0\xa0主演: 莱昂纳多·迪卡普里奥 Leonardo... 1997\xa0 \xa0美国\xa0 \xa0剧情 爱情 灾难'], ['https://movie.douban.com/subject/1292063/', 'https://img2.doubanio.com/view/photo/s_ratio_poster/public/p2578474613.jpg', '美丽人生', '\xa0\xa0La vita è bella', '9.5', '1025570', '最', '导演: 罗伯托·贝尼尼 Roberto Benigni\xa0\xa0\xa0主演: 罗伯托·贝尼尼 Roberto Beni... 1997\xa0 \xa0意大利\xa0 \xa0剧情 喜剧 爱情 战争'], ['https://movie.douban.com/subject/1291561/', 'https://img1.doubanio.com/view/photo/s_ratio_poster/public/p2557573348.jpg', '千与千寻', '\xa0\xa0千と千尋の神隠し', '9.4', '1722688', '最', '导演: 宫崎骏 Hayao Miyazaki\xa0\xa0\xa0主演: 柊瑠美 Rumi Hîragi   入野自由 Miy... 2001\xa0 \xa0日本\xa0 \xa0剧情 动画 奇幻'], ['https://movie.douban.com/subject/1295124/', 'https://img2.doubanio.com/view/photo/s_ratio_poster/public/p492406163.jpg', '辛德勒的名单', "\xa0\xa0Schindler's List", '9.5', '843687', '拯', '导演: 史蒂文·斯皮尔伯格 Steven Spielberg\xa0\xa0\xa0主演: 连姆·尼森 Liam Neeson... 1993\xa0 \xa0美国\xa0 \xa0剧情 历史 战争'], ['https://movie.douban.com/subject/3541415/', 'https://img2.doubanio.com/view/photo/s_ratio_poster/public/p2616355133.jpg', '盗梦空间', '\xa0\xa0Inception', '9.3', '1607435', '诺', '导演: 克里斯托弗·诺兰 Christopher Nolan\xa0\xa0\xa0主演: 莱昂纳多·迪卡普里奥 Le... 2010\xa0 \xa0美国 英国\xa0 \xa0剧情 科幻 悬疑 冒险'], ['https://movie.douban.com/subject/3011091/', 'https://img1.doubanio.com/view/photo/s_ratio_poster/public/p524964039.jpg', '忠犬八公的故事', "\xa0\xa0Hachi: A Dog's Tale", '9.4', '1097505', '永', '导演: 莱塞·霍尔斯道姆 Lasse Hallström\xa0\xa0\xa0主演: 理查·基尔 Richard Ger... 2009\xa0 \xa0美国 英国\xa0 \xa0剧情'], ['https://movie.douban.com/subject/1292001/', 'https://img9.doubanio.com/view/photo/s_ratio_poster/public/p2574551676.jpg', '海上钢琴师', "\xa0\xa0La leggenda del pianista sull'oceano", '9.3', '1309525', '每', '导演: 朱塞佩·托纳多雷 Giuseppe Tornatore\xa0\xa0\xa0主演: 蒂姆·罗斯 Tim Roth   ... 1998\xa0 \xa0意大利\xa0 \xa0剧情 音乐'], ['https://movie.douban.com/subject/1889243/', 'https://img1.doubanio.com/view/photo/s_ratio_poster/public/p2614988097.jpg', '星际穿越', '\xa0\xa0Interstellar', '9.3', '1279562', '爱', '导演: 克里斯托弗·诺兰 Christopher Nolan\xa0\xa0\xa0主演: 马修·麦康纳 Matthew Mc... 2014\xa0 \xa0美国 英国 加拿大 冰岛\xa0 \xa0剧情 科幻 冒险'], ['https://movie.douban.com/subject/1292064/', 'https://img2.doubanio.com/view/photo/s_ratio_poster/public/p479682972.jpg', '楚门的世界', '\xa0\xa0The Truman Show', '9.3', '1192939', '如', '导演: 彼得·威尔 Peter Weir\xa0\xa0\xa0主演: 金·凯瑞 Jim Carrey   劳拉·琳妮 Lau... 1998\xa0 \xa0美国\xa0 \xa0剧情 科幻'], ['https://movie.douban.com/subject/3793023/', 'https://img3.doubanio.com/view/photo/s_ratio_poster/public/p579729551.jpg', '三傻大闹宝莱坞', '\xa0\xa03 Idiots', '9.2', '1463139', '英', '导演: 拉库马·希拉尼 Rajkumar Hirani\xa0\xa0\xa0主演: 阿米尔·汗 Aamir Khan   卡... 2009\xa0 \xa0印度\xa0 \xa0剧情 喜剧 爱情 歌舞'], ['https://movie.douban.com/subject/2131459/', 'https://img3.doubanio.com/view/photo/s_ratio_poster/public/p1461851991.jpg', '机器人总动员', '\xa0\xa0WALL·E', '9.3', '1032310', '小', '导演: 安德鲁·斯坦顿 Andrew Stanton\xa0\xa0\xa0主演: 本·贝尔特 Ben Burtt   艾丽... 2008\xa0 \xa0美国\xa0 \xa0科幻 动画 冒险'], ['https://movie.douban.com/subject/1291549/', 'https://img3.doubanio.com/view/photo/s_ratio_poster/public/p1910824951.jpg', '放牛班的春天', '\xa0\xa0Les choristes', '9.3', '1016057', '天', '导演: 克里斯托夫·巴拉蒂 Christophe Barratier\xa0\xa0\xa0主演: 热拉尔·朱尼奥 Gé... 2004\xa0 \xa0法国 瑞士 德国\xa0 \xa0剧情 音乐'], ['https://movie.douban.com/subject/1292213/', 'https://img9.doubanio.com/view/photo/s_ratio_poster/public/p2455050536.jpg', '大话西游之大圣娶亲', '\xa0\xa0西遊記大結局之仙履奇緣', '9.2', '1169772', '一', '导演: 刘镇伟 Jeffrey Lau\xa0\xa0\xa0主演: 周星驰 Stephen Chow   吴孟达 Man Tat Ng... 1995\xa0 \xa0中国香港 中国大陆\xa0 \xa0喜剧 爱情 奇幻 古装'], ['https://movie.douban.com/subject/5912992/', 'https://img9.doubanio.com/view/photo/s_ratio_poster/public/p1363250216.jpg', '熔炉', '\xa0\xa0도가니', '9.3', '716680', '我', '导演: 黄东赫 Dong-hyuk Hwang\xa0\xa0\xa0主演: 孔侑 Yoo Gong   郑有美 Yu-mi Jung  ... 2011\xa0 \xa0韩国\xa0 \xa0剧情'], ['https://movie.douban.com/subject/25662329/', 'https://img1.doubanio.com/view/photo/s_ratio_poster/public/p2614500649.jpg', '疯狂动物城', '\xa0\xa0Zootopia', '9.2', '1408702', '迪', '导演: 拜伦·霍华德 Byron Howard   瑞奇·摩尔 Rich Moore\xa0\xa0\xa0主演: 金妮弗·... 2016\xa0 \xa0美国\xa0 \xa0喜剧 动画 冒险'], ['https://movie.douban.com/subject/1307914/', 'https://img2.doubanio.com/view/photo/s_ratio_poster/public/p2564556863.jpg', '无间道', '\xa0\xa0無間道', '9.2', '958739', '香', '导演: 刘伟强   麦兆辉\xa0\xa0\xa0主演: 刘德华   梁朝伟   黄秋生 2002\xa0 \xa0中国香港\xa0 \xa0剧情 犯罪 悬疑'], ['https://movie.douban.com/subject/1291841/', 'https://img9.doubanio.com/view/photo/s_ratio_poster/public/p616779645.jpg', '教父', '\xa0\xa0The Godfather', '9.3', '716669', '千', '导演: 弗朗西斯·福特·科波拉 Francis Ford Coppola\xa0\xa0\xa0主演: 马龙·白兰度 M... 1972\xa0 \xa0美国\xa0 \xa0剧情 犯罪'], ['https://movie.douban.com/subject/1291560/', 'https://img9.doubanio.com/view/photo/s_ratio_poster/public/p2540924496.jpg', '龙猫', '\xa0\xa0となりのトトロ', '9.2', '978455', '人', '导演: 宫崎骏 Hayao Miyazaki\xa0\xa0\xa0主演: 日高法子 Noriko Hidaka   坂本千夏 Ch... 1988\xa0 \xa0日本\xa0 \xa0动画 奇幻 冒险'], ['https://movie.douban.com/subject/1849031/', 'https://img9.doubanio.com/view/photo/s_ratio_poster/public/p2614359276.jpg', '当幸福来敲门', '\xa0\xa0The Pursuit of Happyness', '9.1', '1178432', '平', '导演: 加布里尔·穆奇诺 Gabriele Muccino\xa0\xa0\xa0主演: 威尔·史密斯 Will Smith ... 2006\xa0 \xa0美国\xa0 \xa0剧情 传记 家庭'], ['https://movie.douban.com/subject/3319755/', 'https://img1.doubanio.com/view/photo/s_ratio_poster/public/p501177648.jpg', '怦然心动', '\xa0\xa0Flipped', '9.1', '1374010', '真', '导演: 罗伯·莱纳 Rob Reiner\xa0\xa0\xa0主演: 玛德琳·卡罗尔 Madeline Carroll   卡... 2010\xa0 \xa0美国\xa0 \xa0剧情 喜剧 爱情'], ['https://movie.douban.com/subject/6786002/', 'https://img9.doubanio.com/view/photo/s_ratio_poster/public/p1454261925.jpg', '触不可及', '\xa0\xa0Intouchables', '9.2', '763127', '满', '导演: 奥利维·那卡什 Olivier Nakache   艾力克·托兰达 Eric Toledano\xa0\xa0\xa0主... 2011\xa0 \xa0法国\xa0 \xa0剧情 喜剧']]

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1894401.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

relation-graph——数据组装+鼠标移入后的详情(自定义插槽的用法)——js技能提升

最近在写后台管理系统的时候&#xff0c;遇到一个需求&#xff0c;就是给我一些节点&#xff0c;让我渲染到页面上&#xff0c;效果图如下&#xff1a; 之前写过一篇文章关于relation-graph关系图组件http://t.csdnimg.cn/7BGYm的用法 还有一篇关于relation-graph——实现右击…

上位机GUI 第三弹

&#x1f60a; &#x1f60a; &#x1f60a; 从协议层面讲&#xff0c;地质单元相当重要&#xff0c;调试模式,我只能义命令发送的索引码作为,每个设备的区分方式,调试的情况&#xff0c;不在设备上设置任何东西&#xff0c;开机访问地址和端口就能用 因为懒&#xff0c;直接将…

【你真的了解double和float吗】

&#x1f308;个人主页&#xff1a;努力学编程’ ⛅个人推荐&#xff1a;基于java提供的ArrayList实现的扑克牌游戏 |C贪吃蛇详解 ⚡学好数据结构&#xff0c;刷题刻不容缓&#xff1a;点击一起刷题 &#x1f319;心灵鸡汤&#xff1a;总有人要赢&#xff0c;为什么不能是我呢 …

MySQL数据恢复(适用于误删后马上发现)

首先解释一下标题&#xff0c;之所以适用于误删后马上发现是因为太久了之后时间和当时操作的数据表可能会记不清楚&#xff0c;不是因为日志丢失 1.首先确保自己的数据库开启了binlog&#xff08;我的是默认开启的我没有配置过&#xff09; 根据这篇博客查看自己的配置和自己…

Redis持久化的三种方式(RDB、AOF和混合)

Redis持久化的三种方式(RDB、AOF和混合) 目录 Redis持久化的三种方式(RDB、AOF和混合)介绍RDB示例1.配置文件2.触发 RDB 快照保存3.验证 AOF示例1.配置文件2.校验 混合型持久化存储配置文件 介绍 Redis数据主要存储与内存中&#xff0c;因此如果服务器意外重启、宕机、崩溃&am…

Linux Rsyslog+LogAnalyzer+MariaDB部署日志服务器

文章目录 Linux RsyslogLogAnalyzerMariaDB部署日志服务器1 环境准备1.1 服务器端安装LAMP环境1.2 服务启动并加入开机启动1.2.1 Apache1.2.2 MariaDB1.2.3 Php 2 Rsyslog服务端安装及配置2.1 安装Rsyslog及Rsyslog连接MySQL的模块2.2 导入rsyslog-mysql数据库文件2.3 查看刚导…

vector与list的简单介绍

1. 标准库中的vector类的介绍&#xff1a; vector是表示大小可以变化的数组的序列容器。 就像数组一样&#xff0c;vector对其元素使用连续的存储位置&#xff0c;这意味着也可以使用指向其元素的常规指针上的偏移量来访问其元素&#xff0c;并且与数组中的元素一样高效。但与数…

顶级5款有用的免费IntelliJ插件,提升你作为Java开发者的旅程

在本文中&#xff0c;我们将深入探讨IntelliJ IDEA插件——那些可以提升你生产力的神奇附加组件&#xff0c;并微调你的代码以达到卓越。我们将探索5款免费插件&#xff0c;旨在将你的开发水平提升到一个新的高度。 1. Test Data 使用Test Data插件进行上下文操作 作为开发者&a…

IT之旅启航:高考后IT专业预习全攻略

✨作者主页&#xff1a; Mr.Zwq✔️个人简介&#xff1a;一个正在努力学技术的Python领域创作者&#xff0c;擅长爬虫&#xff0c;逆向&#xff0c;全栈方向&#xff0c;专注基础和实战分享&#xff0c;欢迎咨询&#xff01; 您的点赞、关注、收藏、评论&#xff0c;是对我最大…

yum命令提示 错误:rpmdb: BDB0113 Thread/process 4153/139708200269632

一、报错信息 [rootDawn yum.repos.d]# yum clean all 错误&#xff1a;rpmdb: BDB0113 Thread/process 4153/139708200269632 failed: BDB1507 Thread died in Berkeley DB library 错误&#xff1a;db5 错误(-30973) 来自 dbenv->failchk&#xff1a;BDB0087 DB_RUNRECOVE…

【AI】DeepStream(14):图像分割deepstream-segmentation-test示例演示

【AI】AI学习目录汇总 1、简介 deepstream-segmentation-test示例演示了图像的语义分割。两个配置文件,分别加载U-Net和Res-UNet两种分割模型 unet_output_graph.uffunetres18_v4_pruned0.65_800_data.uffU-Net是一个在生物医学图像分割领域广泛应用的卷积神经网络(CNN),…

PHP花涧订购系统-计算机毕业设计源码00332

摘 要 近年来&#xff0c;电子商务的快速发展引起了行业和学术界的高度关注。花涧订购系统旨在为用户提供一个简单、高效、便捷的花卉购物体验&#xff0c;它不仅要求用户清晰地查看所需信息&#xff0c;而且还要求界面设计精美&#xff0c;使得功能与页面完美融合&#xff0c;…

Flume集群部署(手把手部署图文详细版)

前景概要&#xff1a; Kafka消息订阅系统在大数据业务中有着重要运用&#xff0c;尤其在实时业务中&#xff0c;kafka是必不可少的组件之一。 Flume是大数据组件中重要的数据采集工具&#xff0c;我们常利用Flume采集各种数据源的数据供其他组件分析使用。例如在实时业务中&…

实践Go的命令模式

简介 现在的软件系统往往是分层设计。在业务层执行一次请求时&#xff0c;我们很清楚请求的上下文&#xff0c;包括&#xff0c;请求是做什么的、参数有哪些、请求的接收者是谁、返回值是怎样的。相反&#xff0c;基础设施层并不需要完全清楚业务上下文&#xff0c;它只需知道…

【软件测试】之黑盒测试用例的设计

&#x1f3c0;&#x1f3c0;&#x1f3c0;来都来了&#xff0c;不妨点个关注&#xff01; &#x1f3a7;&#x1f3a7;&#x1f3a7;博客主页&#xff1a;欢迎各位大佬! 文章目录 1.测试用例的概念2.测试用例的好处3. 黑盒测试用例的设计3.1 黑盒测试的概念3.2 基于需求进行测…

2024年洗地机哪款最好用?全网最全洗地机选购指南

随着科技的不断进步&#xff0c;人们对生活的品质的追求也逐渐上升&#xff0c;智能家用洗地机也逐渐成为人们家务活的得力助手。随之而来的&#xff0c;洗地机品牌繁多&#xff0c;质量参差不齐&#xff0c;往往让我们无从下手&#xff0c;作为洗地机的重度用户&#xff0c;防…

220千伏变电站辅助设备智能监控平台 无人化与自动化升级改造工程

220千伏变电站特点 高电压等级&#xff1a;220千伏变电站的最大特点是其高压传输能力&#xff0c;能够将发电厂产生的电能高效地传输到较远的地区&#xff0c;满足大型城市及工业区域的用电需求。 输电能力大&#xff1a;220千伏变电站在输电能力上远大于普通的110千伏或更低…

C语言中的自定义类型: 结构体、联合体和枚举

1.结构体类型 结构体是一些值的集合,这些值称为成员变量.结构体的每个成员可以是不同类型的变量. 1.1结构体类型的声明 上述的variable-list可以有也可以没有&#xff0c;有的意思是直接在这就创建了结构体变量&#xff0c;这里创建的变量可以直接初始化&#xff0c;如下面一段…

时空预测+特征分解!高性能!EMD-Transformer和Transformer多变量交通流量时空预测对比

时空预测特征分解&#xff01;高性能&#xff01;EMD-Transformer和Transformer多变量交通流量时空预测对比 目录 时空预测特征分解&#xff01;高性能&#xff01;EMD-Transformer和Transformer多变量交通流量时空预测对比效果一览基本介绍程序设计参考资料 效果一览 基本介绍…

经典递归分析

在前面一篇中, 已经看过许多直观的递归的例子, 在这篇里, 将分析两个经典的递归问题, 阶乘与菲波那契数列数列, 在此过程中, 还将对比递归与循环(迭代)间的异同, 探讨递归与内存中的栈的关系, 以及递归的效率等问题. 如无特别说明, 示例使用的是 Java, IDE 则为 Eclipse. 阶乘(…