于欢案之网民的意见(1)?

浏览: 1906

在那种情景下,是个人都很难理性的。于欢与其母人身自由失去了,生命权生存权尊严的权利面临着随时被侵害的风险,在这种情况下,为了自己的母亲,于欢做了他应该做的事情,我觉得他没有做错。

他的行为合情:

于欢因为母亲受辱,做出了我们都认为对的事情,儿子就该这样做,符合孝道为人子的行为规范,他的行为,合情。

他的行为合法:

在那特定情境下,人身自由被限制,生命安全随时受到伤害,属于不法侵害正在发生,阻止犯罪行为的继续进行,属于正当防卫,合法。

哎,但有的时候我就是觉得法律与人情有交叉又有分离,并不能完美的划上等号,这真的很让人纠结。

故事的开始是这样

2016年4月14日,一位22岁的男子于欢,在母亲苏银霞和自己被11名催债人长达一小时的侮辱后,情急之下用水果刀刺伤了4人。其中,被刺中的杜志浩自行驾车就医,却因失血过多休克死亡。儿子于欢因刺死1人被判无期,判决引发社会热议。山东女企业家苏银霞年轻的儿子于欢,杀死了催债人杜志浩。

案例:于欢案微博评论

微博搜#辱母杀人案#,我们发现人民日报的评论都只有不到1000条,但通过一些分析,发现澎湃新闻相关新闻有近3万条评论。那么我们就爬“澎湃新闻”吧

任务分析

我们之前做过几次微动态网页爬虫,也有针对微博的爬虫任务。通过经验,总结为一下几个要点:

1、抓包分析获得有规律的网址

2、使用cookie保持微博的登录状态

3、数据传输是json格式(类似于字典)

4、这次用正则表达式匹配出想要的评论文本

4、这次再多一个文本数据的保存

1、抓包分析

澎湃新闻网址

http://weibo.com/thepapernewsapp?refer_flag=1005055014_

点击这条新闻的评论,出现下图:



然后我们点击“查看更多”,弹出了另外一个网页

http://weibo.com/5044281310/EBCPc6GhJ?filter=hot&root_comment_id=0&type=comment

打开开发者工具,进行抓包分析,先点击‘查看更多’


出现可疑网址

可疑网址:

http://weibo.com/aj/v6/comment/big?ajwvr=6&id=4089673821592515&root_comment_max_id=183623306287751&root_comment_max_id_type=0&root_comment_ext_param=&page=4&filter=hot&sum_comment_number=6598&filter_tips_before=0&from=singleWeiBo&__rnd=1490606915317

发现该网址中去掉不可用的部分,如下

'http://weibo.com/aj/v6/comment/big?ajwvr=6&id=4089673821592515&root_comment_max_id=162870024611262&root_comment_max_id_type=0&root_comment_ext_param=&page=5&filter=hot'

发现现在是在第五个叶片,page=5。

那么我们就先默认这个网址是可行的,进行后续的操作。

构造出base_url = 'http://weibo.com/aj/v6/comment/big?ajwvr=6&id=4089673821592515&root_comment_max_id=162870024611262&root_comment_max_id_type=0&root_comment_ext_param=&page={page}&filter=hot'

2、cookie的使用

这里我就简单说下吧

Cookie = {'Cookie':‘你的cookie’}

然后发请求

r = requests.get(url, cookies= Cookie)

3、json格式数据

r = requests.get(url, cookies= Cookie)

在咱们这个案例中,数据就是类似于字典的数据

r.text返回的似乎是dict格式的数据,那么真的如自己所想吗?检验下数据格式

结果print(type(r.text))返回的是str,所以我们暂时还不能用dict[key]这种方式获取我们想要的html数据。

这里首先要将str转换为dict,解决办法有两个:

方法一:

import json

Data = json.loads(r.text)

方法二:

直接使用requests的方法

Data = r.json()

我们使用方法二,也建议大家使用方法二:

现在我们马上能能获取html了,在其中也应该能找到评论。结果如下

4、正则匹配出评论文本

首先我们列出几个评论,如下

:不是所有的警察都是这样的。就是因为败类警察太多。

:严查黑恶势力的保护伞,公安系统没有保护伞,他们不会那么猖獗

我们发现评论内容前都出现了,评论内容后出现

那么我们可以构造一个正则表达式规律模板:

re.compile(r': (.*?) )

但是,评论中还是有杂质,如图片链接等,我们只要汉字内容!!!

那么我们这里再用一次正则,匹配出所有的汉字

汉字的正则表达式是

re.compile(r'[\u4e00-\u9fa5]')

多个汉字的表达式是

re.compile(r'[\u4e00-\u9fa5]+')

我们用多个(多于一个汉字)汉字的表达式

但评论是列表格式,我们必须把每个评论编程字符串格式。这里用到列表中多个字符串的拼接方法


5、保存

import os

#获取当前代码所在的文件夹路径

path = os.getcwd()

filename = '辱母杀人评论.txt'

file = path + '/' + filename

f = open(file, 'a+', encoding='utf-8')

#文本写入txt文件

f.write(comment)

#这么详细,不要我写了吧,大功告成了


推荐 2
本文由 邓旭东HIT 创作,采用 知识共享署名-相同方式共享 3.0 中国大陆许可协议 进行许可。
转载、引用前需联系作者,并署名作者且注明文章出处。
本站文章版权归原作者及原出处所有 。内容为作者个人观点, 并不代表本站赞同其观点和对其真实性负责。本站是一个个人学习交流的平台,并不用于任何商业目的,如果有任何问题,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。

0 个评论

要回复文章请先登录注册