Python 爬 ehentai 发生了一些诡异的事情,特来求救

2016-05-08 15:14:21 +08:00
 RqPS6rhmP3Nyn3Tm

本来我还在想, e 站直接把图片地址放在 html 里,连解析 JS 都省了,最多二十分钟搞定。现在想想,还是太年轻。

因为发生了一些很奇怪的事情。

咳,代码挂在 这里,能帮忙看一下那就最好了。

12717 次点击
所在节点    问与答
28 条回复
UnisandK
2016-05-08 15:29:07 +08:00
握爪,我之前也写过 e 绅士的爬虫
写完才知道它家是有 API 的 https://ehwiki.org/wiki/API
RqPS6rhmP3Nyn3Tm
2016-05-08 15:34:50 +08:00
@UnisandK 大雾,折腾了这么久结果发现竟然有 API !!!

不过这些诡异的错误还真不知道怎么解决
RqPS6rhmP3Nyn3Tm
2016-05-08 15:51:44 +08:00
@UnisandK 不对,这 API 其实没啥用,给出的图片地址是缩略图的
Bryan0Z
2016-05-08 15:56:36 +08:00
我猜你用的国内浏览器,云端加速功能关了就不能正常打开了
RqPS6rhmP3Nyn3Tm
2016-05-08 15:57:53 +08:00
@Bryan0Z 我用的是 chrome ,你看这这标志性的开发者工具
vmebeh
2016-05-08 15:58:34 +08:00
环境变量`http_proxy` `https_proxy` 可以设置代理
RqPS6rhmP3Nyn3Tm
2016-05-08 16:00:46 +08:00
@vmebeh 其实代理不是问题,挂个 proxychains 就好了,关键是浏览器不会 connection reset 而网页结构会变让我感到很奇怪
vmebeh
2016-05-08 16:07:18 +08:00
F12 看一下请求头的 Remote Address 就知道浏览器是不是走了代理
RqPS6rhmP3Nyn3Tm
2016-05-08 16:16:59 +08:00
@vmebeh 然而并没有, strange
oott123
2016-05-08 16:25:59 +08:00
你描述的这些现象,可能是由于 UA ,也可能是 Accept 头,也可能是 Accept-Language 头不同。
RqPS6rhmP3Nyn3Tm
2016-05-08 16:35:05 +08:00
@oott123 我在想的是,即便是 chrome ,在配置不变的情况下,也会返回不同的网页结构,我猜也许和 UA 没有关系。
这个问题我通过 iframe 的相对位置解决了,不过 connection reset 还是很诡异。
1423
2016-05-08 16:54:14 +08:00
这不是代理或者网络的问题,楼上的答案都偏题了


是 eheitai 前很久弄得 eheitai home 计划,为了分发图片的

大概就是 p2p 那种,你也可以跑个作为图床,就会发现有图片下载下来了
1423
2016-05-08 16:56:57 +08:00
Hentai@Home
qnnnnez
2016-05-08 16:58:35 +08:00
没遇到过这样的问题,怀疑是 UA ?
第一幅图少了 onclick ,这样一来 ajax 也没了,可能它觉得你禁用 js 了?
RqPS6rhmP3Nyn3Tm
2016-05-08 17:03:34 +08:00
@1423 原来如此,这下就清楚了。话说我收不到你的回复提醒啊。

@qnnnnez 看起来不是 UA 啊,楼上解释得蛮清楚了。
qnnnnez
2016-05-08 17:32:25 +08:00
@BXIA 感觉不像。
Hentai@Home 只是提供了图片而已,不会提供网页。无论图片是不是 h@h 提供的, html 应该是不会改变的,只是图片的 URL 会变。
RqPS6rhmP3Nyn3Tm
2016-05-08 17:55:59 +08:00
@qnnnnez 同一个 Chrome ,我想应该不会改变 UA ,这样就很诡异了
qnnnnez
2016-05-08 18:09:53 +08:00
@BXIA 有没有可能是代理服务器帮你改了下 Headers ?
RqPS6rhmP3Nyn3Tm
2016-05-08 19:09:39 +08:00
@qnnnnez 我用的是自己的 SS ,应该不会。
UnisandK
2016-05-08 19:14:27 +08:00
@BXIA 之前触发回复频繁的限制了╮(╯_╰)╭,抱歉隔这么久才回

官方文档写得比较烂,看看这个 https://github.com/tommy351/ehreader-android/wiki/E-Hentai-JSON-API


API 虽然的确很不好用,但是借助它会比纯爬虫的方式实现好很多

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/277127

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX