【网络爬虫实战】抓取腾讯视频评论

首先
腾讯视频(青云志)中的评论是有多页的,涉及到翻页。猜测评论不是都在网页源码中的,查看网页源码确实不在。
第二
这里通过fiddler获得firefox中新的js网页的url,然后打开此网页。这里还不能发现什么规律。
第三
再次点击更多,通过fiddler获取js网页的url,此时比较这两个url,貌似发现了规律, 只有commentid是不同的(url后面的部分可有可无)

http://video.coral.qq.com/filmreviewr/c/upcomment/0dfpyvfa7tp0ewe?commentid=6165885358242861936&reqnum=3&callback=jQuery1124028619190818429263_1528385498744&_=1528385498747

http://video.coral.qq.com/filmreviewr/c/upcomment/0dfpyvfa7tp0ewe?commentid=6165793094371986503&reqnum=3&callback=jQuery1124028619190818429263_1528385498744&_=1528385498748

将第二个url中的commentid在第一个url对应网页中搜索,发现找到了两个。
这里写图片描述
这里写图片描述

这里是用正则匹配last。
第四步,
写好匹配的正则表达式后,nextid是可以找到并打开的。

代码:

# -*- coding: utf-8 -*-

import urllib.request
import re
import urllib.error

headers = ("User-Agent",
           "Mozilla/5.0(Windows NT 6.1;WOW64) AppleWebKit/537.36(KHTML, like Gecko) Chrome/49.0.2623.22 Safari/537.36 SE 2.X MetaSr 1.0")
openr = urllib.request.build_opener()
openr.addheaders = [headers]
urllib.request.install_opener(openr)
commentid="6165793094371986503"
url="http://video.coral.qq.com/filmreviewr/c/upcomment/0dfpyvfa7tp0ewe?commentid="+commentid+"&reqnum=3&callback=jQuery1124028619190818429263_1528385498744&_=1528385498747"
for i in range(0, 100):
    data = urllib.request.urlopen(url).read().decode()
    patnext = '"last":"(.*?)"'
    nextid = re.compile(patnext).findall(data)[0]
    # print(nextid)
    patcom = '"content":"(.*?)",'
    comdata = re.compile(patcom).findall(data)
    for j in range(0, len(comdata)):
        print("---第"+str(j)+"条评论内容是:")
        print(eval('u"'+comdata[j]+'"'))
    url = "http://video.coral.qq.com/filmreviewr/c/upcomment/0dfpyvfa7tp0ewe?commentid=" + nextid + "&reqnum=3&callback=jQuery1124028619190818429263_1528385498744&_=1528385498747"
    # print(url)

疑问:
爬取一定的评论后不能继续爬取了,中断。
这里写图片描述
这里写图片描述

解决方法:
随便打开一个url页面,爬取页数会多很多。

D:\python.exe F:/pycodes/webCrawl/fidderPractice.py
---第0条评论内容是:
<p><img src="http:\/\/puep.qpic.cn\/coral\/Q3auHgzwzM4L2MhoTH0Gv87A8IcbCNWhqiaQPRzxr057ic0AbSkRgnzg\/0" title="" data-width="325" data-height="201" alt=""\/><\/p><p>《诛仙》作为仙侠剧的力作之一,在仙侠剧的江湖上占着举足轻重的地位。多年前看到这本书的时候,就被张小凡这个角色所感动,资质普通,但是为人忠厚、善良,有人性,更内敛一些,这个角色就像小时候的张无忌一样,虽然愚钝一些,但是是可以坚持的一个角色,这种看似普通的人,一旦有了际遇,却比那些先天资质好的人,更有爆发力。<\/p><p><img src="http:\/\/puep.qpic.cn\/coral\/Q3auHgzwzM4L2MhoTH0Gv8txOLQpzj9kpkr7BOmx4njyfoRHevUZrQ\/0" title="" data-width="255" data-height="255" alt=""\/><\/p><p><img src="http:\/\/puep.qpic.cn\/coral\/Q3auHgzwzM4L2MhoTH0Gviblzn6zHHcSxHZh7DUIicaTulsPYWOu06Og\/0" title="" data-width="210" data-height="311" alt=""\/><\/p><p>前两年看李易峰主演都《古剑奇谭》之后,就感觉,李易峰和张小凡这个人物特别配,一样的表面清冷,一样的内心执着。即使在沦为魔道,张小凡也是一个坚持本心的角色。李易峰在《古剑奇谭》里边就把百里屠苏在正常时候和入魔时候的分寸把握的很到位,这部《诛仙青云志》里边,李易峰一个人要担当两种不同的气质,一个仙门的锄强扶弱的张小凡,一个为了所爱而入了魔道的鬼厉,一个白衣飘飘,一个黑衣瑟瑟,一个清冷,一个毫无人气。之前都张小凡那种清冷是一种内心自卑的体现,喜欢田灵儿的拙朴可爱,天真无忧。爱上碧瑶的为爱身死,和陆雪琪之间说不清的暧昧,所谓一切冥冥之中都注定。正义和邪恶之间,永远没有一个明确的界限,仙界也有无耻的败类,而魔界也可以有有情有义的良善之人。青云门凌驾于其他人之上的峰主也会是一言不合就杀人的狂魔,魔道却有一心向善的小人物。<\/p><p><img src="http:\/\/puep.qpic.cn\/coral\/Q3auHgzwzM4L2MhoTH0GvxWpCbMxfzDIaRtovsCxauibszibX4xfj9iaQ\/0" title="" data-width="340" data-height="191" alt=""\/><\/p><p>《花千骨》奠定了赵丽颖仙侠剧女王的地位,花千骨的可爱可以和碧瑶媲美。碧瑶这个角色,在书里,虽然是张小凡最重要的人,却戏份并不多,本来出场的晚,还一睡好多年,她的出场是为了张小凡沦入魔道而埋下了伏笔,但是在电视剧《诛仙青云志》中,碧瑶的角色变得重要起来,其实若按照书里的情节进行,赵丽颖出演女一号陆雪琪也不是不可能的,只是碧瑶这个觉得则更适合赵丽颖,不同于其他角色的清冷气质,碧瑶以一身绿色衣裙,带着活泼和古灵精怪出现在张小凡的面前,却以着最悲哀的方式离开了张小凡的怀抱(为张小凡身死)。<\/p><p><img src="http:\/\/puep.qpic.cn\/coral\/Q3auHgzwzM4L2MhoTH0GvzdjbPZMPsMGlPiaRx2NxCmqCzia4xN0RUWQ\/0" title="" data-width="340" data-height="192" alt=""\/><\/p><p>青云山上,仙门弟子不染尘垢,同样的气质清冷,张小凡对于陆雪琪也仅仅是见到的颜和她都实力而已,但是,碧瑶不同,虽然是魔的那一方,却为了张小凡不惜身死,这个女子,带着热情表白,在张小凡身边的尘埃里,开出一朵花来,像张小凡这种有情有义的人,怎么会忘记她决然为了自己挡下那一击的付出呢。爱情之中,一般是互补型的,所以,张小凡的选择,会是一个热情的碧瑶。为了她,和仙门决裂,为了她,走遍天下,也要复活她,为了她,在魔道之中越来越冰冷。本剧中,让碧瑶和张小凡的爱情到了一个更高的层次,两颗同样执着的心,为了彼此,不顾一切。<\/p><p><img src="http:\/\/puep.qpic.cn\/coral\/Q3auHgzwzM4L2MhoTH0GvicK83t8tt4vbjVTJlFMwz0Jh447GYeQx6w\/0" title="" data-width="302" data-height="216" alt=""\/><\/p><p>虽然,只是更新了第一集和第二集,基本还是比较符合原著的,只不过天音阁的好像是和尚吧,到了电视剧里变成了长发的侠士了,这部仙侠剧,也延续了《古剑奇谭》里边的高颜值,哪怕是打酱油的角色,都是美的不要不要的。<\/p><p><img src="http:\/\/puep.qpic.cn\/coral\/Q3auHgzwzM4L2MhoTH0Gv0zqhyBIwvKW5TCUfKxomDCyrnicomdNVFQ\/0" title="" data-width="340" data-height="191" alt=""\/><\/p><p>很多粉们是冲着李易峰和赵丽颖来的,当然也不缺乏原著粉们的支持,所以这一部电视剧,在还未播出的时候,就已经热的不要不要的,李易峰和赵丽颖第一次合作的吧(之前我也没有看过,所以认为是第一次),一个是仙侠剧男主,一个是仙侠剧女王,同样的好演技,好颜值,搭配到一起就觉得好美。<\/p><p><img src="http:\/\/puep.qpic.cn\/coral\/Q3auHgzwzM4L2MhoTH0Gvza5WibgwhIH9JlBVIjafNHTIFqNmSrcmDw\/0" title="" data-width="211" data-height="310" alt=""\/><\/p><p>这部电视剧居然看到一个老戏骨,何中华,这个演出过李晓锋的人,这次居然是客串了一下青云门的掌门人,白发白衣,仙气十足,虽然出来的次数不多,但是镜头感十足,还有这个可爱的田灵儿,戏份并不重,但是架不住的可爱,令人欣喜。<\/p><p><br\/><\/p>
---第1条评论内容是:
<p>说实话,对于把《诛仙》搬上屏幕,我还是比较期待的,但听说李易峰出演男就有点打折扣了。主角张小凡是一个外表平凡内心也追求平凡的平凡人,就和他的名字一样。外表风度帅不过林惊羽,内在学识也比不上掌门首席弟子,他后来的成长只在于机遇和个人的抗压本质,张小凡并不是一个帅的代名,结合这些李易峰倒还比较适合林惊羽的。我个人觉得男一井柏然到还是蛮贴切的,东北男人的抗压本质非常贴切。另外,赵丽颖我个人还是比较喜欢的,但是她真的适合碧瑶么,忧郁,惊艳,空灵这样的感觉在可爱的包包脸上,原谅我体会不出来哇!!<\/p><p><br\/><\/p>

**。。。由于页面过长,省略。。。**

---第2条评论内容是:
<p>你只看到他的满腹心机,却看不到他内心的挣扎;<\/p><p>你只看到他的狠毒绝辣,却看不到他的身不由己。<\/p><p>他不是绝情的没有一点人性,也不是冰冷的没有一丝情感。<\/p><p>他只是惧怕真心相对,他从未被人爱过,所见的亦只有残杀与死亡,怕敞开真心只会让本就破碎的心,更加千疮百孔。<\/p><p>他不能率性的活着,他的身上背负了太多的阴暗与苦难,就如他手中的毒药,痛苦着别人,其实最煎熬的还是自己。<\/p><p>谁愿意成为天下公敌?<\/p><p>一辈子只有无尽的黑暗与折磨?<\/p><p>毒公子,毒惧了天下,毒伤了自己;<\/p><p>斩相思,斩得了荆棘阻碍,却斩不断自己的无边苦楚。<\/p><p>毒公子,狠毒的让人理解,<\/p><p> 孤独的让人心疼,<\/p><p> 可怜的让人忍不住想一生守护。<\/p>
Traceback (most recent call last):
  File "F:/pycodes/webCrawl/fidderPractice.py", line 28, in <module>
    data = urllib.request.urlopen(url).read().decode()
  File "D:\lib\urllib\request.py", line 223, in urlopen
    return opener.open(url, data, timeout)
  File "D:\lib\urllib\request.py", line 532, in open
    response = meth(req, response)
  File "D:\lib\urllib\request.py", line 642, in http_response
    'http', request, response, code, msg, hdrs)
  File "D:\lib\urllib\request.py", line 570, in error
    return self._call_chain(*args)
  File "D:\lib\urllib\request.py", line 504, in _call_chain
    result = func(*args)
  File "D:\lib\urllib\request.py", line 650, in http_error_default
    raise HTTPError(req.full_url, code, msg, hdrs, fp)
urllib.error.HTTPError: HTTP Error 502: Fiddler - Connection Failed

Process finished with exit code 1

猜你喜欢

转载自blog.csdn.net/feng_zhiyu/article/details/80621133