Board logo

标题: [文本处理] [已解决]求助批处理采集豆瓣读书书籍短评 [打印本页]

作者: tbjx138    时间: 2023-5-24 17:44     标题: [已解决]求助批处理采集豆瓣读书书籍短评

求助大神,豆瓣读书书籍短评的采集

比如这个链接:
https://book.douban.com/subject/1023045/comments/

万分感谢大神!!!
作者: jyswjjgdwtdtj    时间: 2023-5-24 18:15

本帖最后由 jyswjjgdwtdtj 于 2023-5-24 18:17 编辑

你是要采集这个页面上的所有评论?
保存为txt还是html还是xml还是doc?
作者: tbjx138    时间: 2023-5-24 18:42

你是要采集这个页面上的所有评论?
保存为txt还是html还是xml还是doc?
jyswjjgdwtdtj 发表于 2023-5-24 18:15


是的,就是书籍的所有评论,txt就行,您怎么方便都可以的,感谢大神的帮忙
作者: terse    时间: 2023-5-24 20:10

  1. $url = 'https://book.douban.com/subject/1023045/comments/'
  2. $response = Invoke-WebRequest -Uri $url
  3. $content = $response.ParsedHtml.getElementsByClassName('comment-content') | %{$_.outerText}
  4. Set-Content -Path "output.txt" -Value $content -Encoding Default
复制代码

作者: jyswjjgdwtdtj    时间: 2023-5-24 20:18

本帖最后由 jyswjjgdwtdtj 于 2023-5-24 20:19 编辑
  1. Set http = CreateObject("msxml2.xmlhttp")
  2. Set fso = CreateObject("scripting.filesystemobject")
  3. Function Gethtml(url)
  4.    http.open "GET",url,False
  5.    http.send()
  6.    Gethtml = http.responsetext
  7. End Function
  8. burl = InputBox("url")
  9. Set f = fso.createtextfile("1.txt",True,True)
  10. For i = 0 To 1000
  11. Set Document = CreateObject("htmlfile")
  12. Document.designmode="on"
  13. html = gethtml(burl & "?start=" & CStr(20 * i) & "&limit=20&status=P&sort=score")
  14. Document.write html
  15. Dim score
  16. For Each div In Document.Getelementsbytagname("div")
  17.    If div.Classname = "comment-list score " Then
  18.        Set score = div
  19.        Exit For
  20.    End If
  21. Next
  22. Set ul = score.children(0)
  23. For Each li In ul.children
  24.    f.writeline li.InnerText
  25.    f.writeline ""
  26. Next
  27. Next
复制代码
典型的粗制滥造脚本
输入最后面带有/的啊
比如https://book.douban.com/subject/1023045/comments/
放进vbs文件
楼上那个只能搞一页
作者: tbjx138    时间: 2023-5-24 20:18

terse 发表于 2023-5-24 20:10



    您好,terse大神,万分感谢您的应助,这个应该怎么用,我不太会,还请详细指教!!谢谢!
作者: jyswjjgdwtdtj    时间: 2023-5-24 20:25

蔽日爬个你那个
4320 有用 娅 2013-06-16 10:46:36
我和谁都不争,和谁争我都不屑;我爱大自然,其次就是艺术;我双手烤着生命之火取暖;火萎了,我也准备走了.

2839 有用 进宝 2014-02-03 17:06:21
“我们只有死别,没有生离。”

2468 有用 Sofia 2010-07-20 19:28:17
说实话,我并不喜欢这本书的第一部和第二部,尽管其中体现了一家三口之间的亲情和温情,可我实在不喜欢这种梦境的表述形式,感觉将原本很真的情感弄得很不真。 然而我的确实在实在很喜欢这本书的第三部,也就是对生活的回忆这部分,朴实的叙述之中蕴含着浓浓的深情,让人不由得感叹,文字的表述根本不需要技巧,需要的是一种情感的流露,或者说,文字的技巧达到一定的高度便会仿若无技巧般,正如化妆的高境界是让人看不出你化了妆。

1263 有用 莎莫吴 2014-04-27 16:07:52
好看当然是很好看,不过杨绛刻意压抑着什么没说,却又让你强烈感知到它的存在。

834 有用 Iris 2016-05-27 17:39:36
一开始不懂第二部分,于是从第三部分开始看,最后再看第二部分,才知道是用梦境的形式写钱钟书和女儿逝世前的日子。非常钦佩杨绛先生书里体现出来的克制,在90多岁的高龄,回忆已经离世的丈夫和女儿,但书里不见痛彻心扉,反而常常因一些生活中的细节感到忍俊不禁。很多人纪念杨绛先生朋友圈刷了屏,她的只言片语也成了感悟人生的鸡汤,可是,先生的学识、背景、品格,我们只不过见了冰山一角而已。知乎上有个问题“如何评价杨绛先生”,一句“不敢评”的回答拿了2000多赞,深以为然。老一辈的知识分子,哪是我们这种什么都不知道、什么都没经历过、也没见过什么大世面、更没好好读过书的人能评的?

534 有用 倾内 2013-04-22 00:48:38
这样的行文只剩絮叨,看不见一丝才气了…并且杨绛在此书字里行间透露出来的姿态也真的不太让人舒服…

403 有用 Bricoleur 2015-12-12 23:15:48
杨绛一家人太聪明了,以至于在杨的笔下,三个人的小日子就是全世界,全世界就是小日子,学术对他们也不过是过日子的点缀,读写作为过日子的境界。钱钟书父女到底如何对待生活和家庭,我们其实无从得知。所能看到的仅仅是老太太一个人的絮叨,仿佛从未承认亲人的离去。哪怕他们号称“贯通中西”,这种对待生活和世界的态度也完全是帝国式的,生活里没有其他人,甚至连女婿的位置都没有。和同时代的其他知识分子相比,杨笔下的生活好像永远都是梦境,轻飘飘踩在棉花上。当然,杨绛的文笔棒极了,无可企及。

440 有用 自在渍 2011-06-18 10:56:38
“陪他走的愈远,愈怕从此不见。”

369 有用 2koo 2007-09-09 14:04:36
世间好物不坚牢,彩云易散琉璃脆

289 有用 高歌 2012-05-21 13:38:56
我觉得挺一般的。温情脉脉有之,作者的粉饰亦有之。

297 有用 德川咪咪 2016-05-26 15:52:22
我昨天刚刚看完……读到第二部分失散篇简直哭瞎,最后她写“世界好物不坚牢,彩云易散琉璃脆”,心都碎了,现在还缓不过气来。杨绛与我供职的报社羁绊极深:我有一个同事是杨绛生前最后一个、也是百岁之后唯一一个愿意接见交谈的记者;另一个同事几乎被杨绛当成女儿看待(这个是外界猜测,因为这个同事才华品貌酷似钱瑗,且同样罹患癌症。但她们只作书信来往,约定终身不见面)。以前常听她们聊杨绛的琐事,心里其实有点不喜。记得她们对我说,只要第三者一转述,老太太的言行就会显得很作,但是与本人接触时,却觉得真名士自风流,一切都很自然。看完这本书,我是信了。

241 有用 向三峡 2015-07-19 22:37:27
生活上或许幼稚,政治上绝对成熟。

266 有用 慢先森 2015-01-30 11:02:03
杨绛骨子里还是有点“作”的。

284 有用 靠谱 ~ 2016-03-13 01:51:40
读一遍就好了,多读两遍怕生出辞工回去陪爹妈养老的冲动。

243 有用 Alina 2016-05-19 09:59:26
不知道为什么,一直很抗拒字里行间流露出来的那种姿态。

194 有用 不靠谱** 2011-09-15 20:09:56
找一个人一起喝喝酒、聊聊天、旅旅游,易。找一个人一起看看书,难。找一个人一起看一辈子的书,相濡以沫,疑义相析,难上加难。

194 有用 甘草披萨 2016-02-03 12:22:28
四星半,感深肺腑。不愿摧眉折腰事权贵,并非铁骨铮铮,只是生性腼腆淡泊,但求尽情看自己想读的书,过平静的日子而已。腹有诗书的傲气亦并非盛气凌人,而是精神世界的丰盛,可以让他们在物质最匮乏的时期都能不予介怀。可惜世事动荡如浮萍,远离是非的三人,却仍然历经风雨飘摇。我们仨饱尝苦楚,但杨绛的记忆之笔没有昼吟宵哭,反而满目尽是幸福温馨的甜蜜时刻。钱钟书因为听说安排要和某人握手,立刻溜走回家;留洋学业繁忙占据自己读书时间,甚至想不要文凭;真是爱极了我们的老一辈知识分子的性格

177 有用 眠去 2007-04-28 18:44:25
她说,我一个人思念我们仨。

146 有用 AKA小谁 2011-05-26 07:42:19
书读的太多太过自作聪明,反而不是什么好事

114 有用 沉歌 2009-03-10 17:57:59
这是一个“万里长梦”。梦境历历如真,醒来还如在梦中。但梦毕竟是梦,彻头彻尾完全是梦。

136 有用 Paradox 2013-01-19 23:48:07
两部分文章,一虚一实,前一部以驿道比人生,客栈比寓所,道尽生离死别种种难舍,但却以虚衬实,好似一个悲伤的童话,最后相依为命的一家三口最终散失于古驿道。第二部分叙事跨度大,细节更丰富,而且是平实的回忆散文,能够窥见这一学者家庭的一些生活细节。尤其对了解钱钟书人生际遇和性格特点有很大帮助。杨绛孤身一人回忆逝去的至亲,文字中未见过重的悲伤和遗憾,透露出来的是对温馨生活的回忆,这回忆传递出阵阵温暖让杨绛的晚年不感孤寂,也让读者感叹不已。

176 有用 小十三 2018-03-12 20:08:06
可能人太聪明了,不论学术上有什么成就,生活里始终都会有带一点儿自负的感觉,文字语言自然没得说,但是带着有点淡淡压抑,又有点稍稍自作清高的感情描述,始终打动不了我这俗人,看的泪流满面的各位,想必都是至情至性的才子佳人吧

92 有用 elf 2011-06-17 11:30:14
这是一个学士文采不输给钱钟书的人,但却甘心做钱钟书背后的女人。杨绛充满温情的捍卫着钱钟书种种的被误会以及生活不能自理。文字显示不出她的才华,却清楚的知道,太太是丈夫最好的品位体现,何况还有一个才华横溢的女儿钱媛。还有一个小外挂,杨绛读书远远多于钱钟书,因为她深知钱时间很宝贵,于是自己先筛选一道才把最精良的留给钱钟书。

83 有用 阿梦 2011-07-10 18:27:29
人情甚暖,也能涌出几股泪来。

70 有用 日立 2011-03-26 22:45:17
终于看完了 淡淡的柴米油盐酱醋茶 从战乱到** 亲情平淡而感人 但文字和立场过于自恋 风格不喜

85 有用 黄雷蕾Linali 2015-11-07 20:35:10
人和人的羁绊原来可以这么深,克制的语言原来可以这么感动人。

60 有用 咸鹅 2016-08-03 11:24:05
3.5星吧,对丈夫与女儿的深情令人动容,行文也优美,但不知是读晚了还是读早了,某些涉及人事和政治的细节读得我不太舒服,难说是糊涂还是世故,真诚还是刻薄。第一部分的梦更有意思,让人心悸之后又怅然若失,猜想梦的一些桥段源自政治环境造成的心理阴影,比如钱钟书被人派车接走那部分。

125 有用 丽江 2019-06-21 11:11:17
有些短评也太苛刻了

58 有用 王清欢 2013-07-29 15:39:00
看第一段梦境照应现实,想起宝玉朝贾政下拜后的歌:我所居兮,青埂之峰,我所游兮,鸿蒙太空,谁与我游兮, 吾谁与从,渺渺茫茫兮,归彼大荒。差不多就是由来同一梦,休笑世人痴的感觉

51 有用 benshuier 2014-02-07 12:54:23
杨绛多少有点文青那种清高的气质的,到底是读书人

49 有用 古小缺 2013-09-01 12:17:42
这本读完真的没有太多感,实在不习惯这样的文笔 #杨先生对不起#

61 有用 大霹雳 2014-08-30 23:01:48
不用哭天抢地,平平淡淡就把苦难讲了

60 有用 StLiberato音控 2017-07-27 16:27:10
掠过几篇——学生日记、絮絮叨叨流水账、隔壁大妈般聒噪——不见文学功力,缺乏三毛品味生活的灵气,又少了章诒和笑觑众俗的智气。唉,名人光环,有名无实的作品,若换做钱老,即便回忆录也可以语惊四座吧。

58 有用 Suave 2016-06-03 00:03:13
杨先生一家的颠沛也是时代下的产物,读这样的书只有敬意,实在不敢打分

33 有用 睡不醒 2012-03-08 20:07:03
我曾做过一个小梦,怪他一声不响地忽然走了。他现在故意慢慢儿走,让我一程一程送,尽量多聚聚,把一个小梦拉成一个万里长梦。这我愿意。送一程,说一声再见,又能见到一面。

41 有用 微霄 2013-02-03 17:50:34
锺书谆谆嘱咐我:“我不要儿子,我要女儿 ——只要一个,像你的。”

28 有用 黑点小虎 2015-10-23 15:55:49
独生独死 独去独来

34 有用 汪拾叁 2014-09-22 19:55:48
一般。

32 有用 曼殊 2012-08-23 21:47:01
其实我并不了解钱钟书,杨绛和他们的女儿,但真情总是能打动人。

34 有用 chaaaaad。 2016-07-04 01:25:54
我曾经好几次以为当下住的就是一辈子的“家”,谁知不过又是人生中的一个客栈罢了。

47 有用 Eintagsfliegen 2014-12-25 17:23:12
钱钟书和杨绛两口子,一辈子聪明刻薄世故。文能做学术、写小说,损起人来一般人都听不懂;武能帮猫打架,与市井大妈抢小厨房,明目张胆瞧不起人,从不装宽厚慈祥。大风大浪见过,不整人也没挨整,耍着花招平安一生。所以,他俩真正一对千年老妖精,正过来是君子明哲保身,和光同尘。反过来是谙透政治与人性,洞悉所有的黑暗与卑劣。

30 有用 那个Wednesday 2014-08-05 20:32:53
这样心意相通一家人也不知道是几辈子修来的缘分 看到他们女儿圆圆那段挺难受,当真是“人是聪明减福寿 向来薄福赠倾城”

36 有用 喜欢一个人 2012-04-20 20:56:13
我哭了,一次又一次。

26 有用 H ™ 2014-04-29 10:25:09
第一部分是鬼故事啊,后面还是有点矫情,儿女不是私有财产。

后面还有不少
作者: buyiyang    时间: 2023-5-24 20:32

没登陆好像最多220条
作者: tbjx138    时间: 2023-5-24 20:42

典型的粗制滥造脚本
输入最后面带有/的啊
比如
放进vbs文件
楼上那个只能搞一页
jyswjjgdwtdtj 发表于 2023-5-24 20:18

您好,感谢您的vbs,我测试了下,TXT是可以导出的,
但是复制地址后,点击确定,出现这个提示,
行:22
字符:1
错误:没有权限:“children”
代码:800A0046
源:Microsoft VBScript 运行时错误
不知道是什么问题?您看看,是我操作问题吗?
作者: jyswjjgdwtdtj    时间: 2023-5-24 20:44

回复 9# tbjx138


    啊啊啊 我比较懒 评论导出完之后用错误来结束进程
能导出就行 不要在意这些细节
对于那个没有登录只能看220条的问题 你可以打开ie(别的似乎不行) 在ie非无痕模式下登陆一下 窗口不要关
ie和xmlhttp共用cookie
作者: tbjx138    时间: 2023-5-24 20:47

本帖最后由 tbjx138 于 2023-5-24 20:52 编辑
回复  tbjx138


    啊啊啊 我比较懒 评论导出完之后用错误来结束进程
能导出就行 不要在意这些细节: ...
jyswjjgdwtdtj 发表于 2023-5-24 20:44



    好的,能导出的,我以为我哪里弄得不对呢,
对于那个没有登录只能看220条的问题,这个我还真不知道,还是大神厉害,能看到问题本质
我一会测试一下。
再次感谢jyswjjgdwtdtj大神帮忙!!!
作者: jyswjjgdwtdtj    时间: 2023-5-24 21:38

回复 11# tbjx138


    欸欸欸 220条是那位buyiyang说的
作者: tbjx138    时间: 2023-5-24 22:20

回复  tbjx138


    欸欸欸 220条是那位buyiyang说的
jyswjjgdwtdtj 发表于 2023-5-24 21:38



    对对,我刷新时没有看到上面的buyiyang朋友回帖,说声抱歉了
作者: tbjx138    时间: 2023-5-24 22:27

典型的粗制滥造脚本
输入最后面带有/的啊
比如
放进vbs文件
楼上那个只能搞一页
jyswjjgdwtdtj 发表于 2023-5-24 20:18


jyswjjgdwtdtj大神您好,感谢你的热心应助,我还请求您帮我一个忙,还是豆瓣的,
就是原文摘录,这一项我也想采集一下
https://book.douban.com/subject/1023045/blockquotes
还请大神帮忙看看!!先谢谢了!!
作者: Batcher    时间: 2023-5-24 22:28

回复 6# tbjx138


4楼代码这样执行试试:
http://bbs.bathome.net/thread-31071-1-1.html
作者: tbjx138    时间: 2023-5-24 22:42

回复  tbjx138


4楼代码这样执行试试:
Batcher 发表于 2023-5-24 22:28


感谢管理员的回复,按照链接看了一下,没有太明白操作 我很菜,只能弄些简单的。
作者: terse    时间: 2023-5-25 08:26

回复 16# tbjx138
保存为bat文件运行
如果要用户名 时间之类的 把‘comment-content’ 换为 ‘comment’
  1. <# :
  2. @echo off
  3. cd.>output.txt
  4. powershell -noprofile -NoLogo "iex (${%~f0} | out-string)"
  5. pause
  6. exit
  7. #>
  8. function get-content($url, $startPage, $endPage) {
  9.      for ( $i = $startPage; $i -le $endPage; $i++) {
  10.            $pageUrl = $url+"?start=$(($i - 1) * 20)&limit=20&status=P&sort=score"
  11.            $response = Invoke-WebRequest -Uri $pageUrl
  12.            $content = $response.ParsedHtml.getElementsByClassName('comment-content') | %{$_.innerText}
  13.            Add-Content -Path "output.txt" -Value $content -Encoding UTF8
  14.      }
  15. }
  16. $url = 'https://book.douban.com/subject/1023045/comments/'
  17. get-content $url 1 11
复制代码

作者: tbjx138    时间: 2023-5-25 09:05

回复  tbjx138
保存为bat文件运行
如果要用户名 时间之类的 把‘comment-content’ 换为 ‘comment’
terse 发表于 2023-5-25 08:26

感谢terse大神,热心应助,
按照代码操作可以导出220条了,
反馈一下测试
如果要用户名 时间之类的 把‘comment-content’ 换为 ‘comment’
这个换了后没有反应,还是和之前导出一样。
作者: jave000    时间: 2023-5-25 09:14

网页采集信息不是用RPA最方便么
作者: terse    时间: 2023-5-25 09:30

回复 18# tbjx138
怎么回事呢,没有改动的话应该不会出现你说的问题
作者: tbjx138    时间: 2023-5-25 09:44

回复  tbjx138
怎么回事呢,没有改动的话应该不会出现你说的问题
terse 发表于 2023-5-25 09:30



    没有改动其他,按照你说的操作的,不知道什么原因,还有就是我的ie浏览器不能登录豆瓣
作者: terse    时间: 2023-5-25 10:58

这样运行后 查看两个文件的内容一样吗
  1. <# :
  2. @echo off
  3. cd.>output1.txt
  4. cd.>output2.txt
  5. powershell -noprofile -NoLogo "iex (${%~f0} | out-string)"
  6. pause
  7. exit
  8. #>
  9. function get-content($url, $startPage, $endPage) {
  10.      for ( $i = $startPage; $i -le $endPage; $i++) {
  11.            $pageUrl = $url+"?start=$(($i - 1) * 20)&limit=20&status=P&sort=score"
  12.            $response = Invoke-WebRequest -Uri $pageUrl
  13.            $content1 = $response.ParsedHtml.getElementsByClassName('comment-content') | %{$_.innerText}
  14.            $content2 = $response.ParsedHtml.getElementsByClassName('comment') | %{$_.innerText}
  15.            Add-Content -Path "output1.txt" -Value $content1 -Encoding UTF8
  16.            Add-Content -Path "output2.txt" -Value $content2 -Encoding UTF8
  17.      }
  18. }
  19. $url = 'https://book.douban.com/subject/1023045/comments/'
  20. get-content $url 1 11
复制代码
回复 21# tbjx138
作者: tbjx138    时间: 2023-5-25 11:03

这样运行后 查看两个文件的内容一样吗回复  tbjx138
terse 发表于 2023-5-25 10:58



    感谢terse大神耐心回复,还是没有改变,可能是我的原因吧。就这样吧,能导出就行了,再次谢谢大神了
作者: jyswjjgdwtdtj    时间: 2023-5-25 18:02

回复 14# tbjx138


    略微改了一下
  1. Set http = CreateObject("msxml2.xmlhttp")
  2. Set fso = CreateObject("scripting.filesystemobject")
  3. Function Gethtml(url)
  4.     MsgBox url
  5.    http.open "GET",url,False
  6.    http.send()
  7.    Gethtml = http.responsetext
  8. End Function
  9. burl = InputBox("url")
  10. Set f = fso.createtextfile("1.txt",True,True)
  11. For i = 0 To 1000
  12. Set Document = CreateObject("htmlfile")
  13. Document.designmode = "on"
  14. html = gethtml(burl & "?sort=score&start="&i*20)
  15. If InStr(html,"你没有权限访问这个页面") = -1 Then
  16.     WScript.quit
  17. End If
  18. Document.write html
  19. Dim score
  20. For Each div In Document.Getelementsbytagname("div")
  21.    If div.Classname = "blockquote-list score bottom-line" Then
  22.        Set score = div
  23.        Exit For
  24.    End If
  25. Next
  26. Set ul = score.children(0)
  27. For Each li In ul.children
  28.    f.writeline li.InnerText
  29.    f.writeline ""
  30. Next
  31. Next
复制代码
就是爬原文摘录的
也要加上/
作者: tbjx138    时间: 2023-5-26 08:39

回复  tbjx138


    略微改了一下就是爬原文摘录的
也要加上/
jyswjjgdwtdtj 发表于 2023-5-25 18:02


感谢jyswjjgdwtdtj大神的再次相助,已经可以导出原文摘录了,万分感谢!!!




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2