《汉语大词典》(网络版 V.2)的特色(节选)

登录没有叫你输入验证码吗?

没有让算题 :stuck_out_tongue:

1 个赞

刚才用浏览器登录,发现出题了 :rofl:
我因为不习惯用渲染方式采集,所以登录后用requests接管了,不知道是不是这个原因。

  1. 上面有个专业搞破解的啊,那脚本直接填付费id能用吗。
  2. 这种事搞慢了,升级对抗,越迟越难搞啊。
  3. 以前用 selenium+request 会被识别,可以用 cloudscrape 代替 request, 用法和 request 一样,只不过多加了层“反-反爬”(反 request 基本都有)

我好像忘了为requests设置user-agent了。下午再试,不急,不行就全用渲染,或者试试楼上提到的库。

1 个赞

requests 要使用无头浏览器的 userAgent。如果站方检测的话,无头浏览器也可以被识别,需要使用 stealthPlugin 插件修改特征,或者使用打过补丁的 Selenium。

多谢!下午上班来就加了头部,但谁知道上午跑得好好的程序下午竟提示ssl版本不对,因为工作忙也没顾上再弄。刚才搜了搜想尝试升级anaconda,但慢死了。
我觉得忘写user-agent的可能性很大。如果不行再尝试其它办法,有时候环境太复杂了容易冲突甚至损坏。

这个插图版不知是否有人见过,还多了页码、拼音等信息

《汉语大词典》的手绘花草图 - 掌上百科编纂处 - Dictionary Discussion - 掌上百科 - PDAWIKI - Powered by Discuz! (061061.xyz)

楼上大侠给的js版本很优雅,本来可以直接套用。一则我不太熟悉js,另外因为没有大侠没有付费账号,所以大概也像我原来以为主要是一个会话id和算式验证的问题,应该没有用浏览器渲染登录。
付费帐号登录时除用户的密码外,提交的还有一个随机生成的东西。不用模拟登录恐怕不行,我都没敢乱试。一年时间,慢一点儿不怕,就怕被列入问题账户。

wfg 的。

是指 csrf 吗?在网页里有这个字段。

嗯,就是它。 :joy_cat:

先 Get 请求下网页,提取这个字段和 Cookie,再用 Post 一起提交。

1 个赞

版面设计和 wfg 的词典很像,但我没有使用 wfg 的版本,需要你自己看看,刚才看到原贴作者是 eeshu ,也可能他自己做的词典。

另外也把相關的文字連結、圖片連結做一些適當的修正,最後經過編譯,得到 “漢語大詞典3.0.mdx”(64MB) 及 “漢語大詞典3.0.mdd”(7MB,包含512幅插圖

eeshu有和wfg合作的,有几个流出的mdx是共同作者。

1 个赞

果然前后是一样的,我还以为这是个随机生成的东西呢。那看来不需要Selenium了。
正在发愁环境冲突问题呢,升级conda慢不说,刚才又提示内存不够。
好,试试直接requests。

1 个赞

多谢~~翻不了q,看来是无福消受了 :sweat_smile:。在本坛搜到了带插图的版本,但”万年青“等词条没有插图,不过能用就很好了。坛里汉大版本太多,有一点懵 :dizzy_face:

1 个赞

上面那个链接没有提供下载,我也没有 wfg 的版本。

1 个赞

用post不行,csrf应该是通过js传递的。
另外今天那网站不知是抽风,还是只针对我?词典目录页只有图片,没有链接。直接输入链接也跳不到。查词出错。难道已经被发现了?
ssl也弄不好……


昨天只抓了一字头,希望不是绝响
一字头.txt (27.2 KB)

1 个赞

CSRF 是专有名词,这个技术专门用于防止跨站攻击,不针对脚本抓取,99.9% 的实现都是由服务器直接下发。楼上那位兄弟,代码里就是直接 POST 的 CSRF。