谷歌是怎么爬 React 网站的?

2022-11-23 09:53:32 +08:00
 lFOqSK
最近尝试用 React 搭了一个网站。结果谷歌一上来爬就从 10000 页开始爬。我这网站最大页数也就 1000 多页,它直接爬第 10000 页,然后 8000 ,6000 这样。全部都是无内容页。
我的翻页器有明确告诉它我网站的头尾页网址,以及上一页和下一页的网址。而且是打印出来给它看的。但是它跟没看到一样,自己穷举页数。然后 search console 那给我告警说收录了上千页 bad page 。正经的内容页面就爬了一点点,其他全在浪费时间穷举我的页码。我真无语。之前 HTML 网站就没这个问题。
有人知道谷歌是怎么爬 React 网站的吗?这个穷举是它自己的爬虫逻辑,还是我网站有什么错误超链接导致的?
4458 次点击
所在节点    程序员
20 条回复
lichao
2022-11-23 09:57:06 +08:00
建议做一个 Sitemap 给它
lFOqSK
2022-11-23 09:57:54 +08:00
@lichao 做了呀。这个肯定是做了。但是它有自己的想法。
likunyan
2022-11-23 10:06:42 +08:00
从最新的爬,没毛病。不过他没有检测内容,因为你随机输出一些东西,只要不是 404 ,他就保存了。建议返回 404 。
qqjt
2022-11-23 10:32:57 +08:00
无内容页得返回 http 404 啊
slime7
2022-11-23 11:29:44 +08:00
看楼上说返回 404 ,我问一下前后端分离的页面怎么优雅返回 404 状态?
Masterlxj
2022-11-23 11:31:18 +08:00
你给它个 robots 不就好了么
westoy
2022-11-23 11:45:08 +08:00
蜘蛛不会穷举的

这是被伪装成 google 爬虫的给定向采集了
Charrlles
2022-11-23 13:04:41 +08:00
10000 页显示成软 404 ,加上 noindex 就可以了吧,或者直接重定向到 404 页面
locoz
2022-11-23 13:14:04 +08:00
@slime7 #5 我见过的大部分都是前端请求完列表接口之后,发现没有东西就跳转个 404 页面
locoz
2022-11-23 13:15:42 +08:00
@westoy #7 注意看人家说的啊,“然后 search console 那给我告警说收录了上千页 bad page”,都在 Google 自己的地方提示了怎么可能还是假 Google...
lFOqSK
2022-11-23 13:21:16 +08:00
@westoy 但是谷歌的 search console 上是显示是它自己爬的。它现在已经穷举了 5000 多页了。爬取结果都是 Duplicate without user-selected canonical 。然后最神奇最离谱的地方在于,理论上来说它应该告诉我它是从哪里知道我这个网址所以才来爬的。但是这些页面的 Referring page 全部都是页面自己。比如 ?page=10000 的 Referring page 就是 ?page=10000 ,一模一样一字不差。
我从来没见过这么离谱的事情……如果不是因为这个 Referring page 全部都是页面自己,我还真不会怀疑到谷歌的爬虫逻辑上……
westoy
2022-11-23 13:23:32 +08:00
@locoz
@lFOqSK

我的问题, 没注意, 武断了......
terranboy
2022-11-23 13:26:16 +08:00
SSR 了没 不然爬啥
lFOqSK
2022-11-23 13:31:57 +08:00
@qqjt
@Charrlles
谷歌是判定我的这些页面为软 404 ( Duplicate without user-selected canonical )的。但是我纠结的地方在于,它浪费太多时间在穷举我的这些页码上面了。而我每页的内容,就是那些文章链接什么的,它只爬了很小一部分。而且它这个穷举目前根本没有停下来的意思。
目前,正经内容它只爬了 800 页左右,而这些穷举的 404 页面它爬了 5000 页了。而且我不知道它这样是在干嘛,如果爬完 10000 以内的页面,它是不是还回去爬大于 10000 的页面?因为谷歌对每个网站的爬取是有每日频次限制的,它这样浪费时间穷举,以前一个月就可以索引完整个网站,现在都过去半个月了,正经的内容才 800 页。整个网站爬完估计要花一年时间……
lFOqSK
2022-11-23 13:37:18 +08:00
@terranboy 我看它的 Crawled page 记录里显示的 html 是有把我特地给它准备的文章页和翻页隐藏超链接都渲染出来的,而且它确实有跟着这些超链接去爬我的文章页。所以我目前还没做 SSR 。之后研究下考虑弄一下 SSR 。
但是主要是它这个莫名其妙去穷举我没给过的页码的行为,太浪费时间了……
terranboy
2022-11-23 13:50:47 +08:00
@lFOqSK 也许他是看你是 REACT 页面 才会出现这些情况的 SSR 了看看吧
yazoox
2022-11-23 14:36:22 +08:00
楼主,怎么看 goolg 爬你的网站这些明细详细信息的?
ericgui
2022-11-23 15:12:29 +08:00
@yazoox +1 同问
ericgui
2022-11-23 15:15:03 +08:00
@yazoox 哦,人家说了就是 google search console
你搜一下
blankmiss
2022-11-23 15:15:23 +08:00
爬虫有自己的想法 哈哈哈

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

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

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

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

© 2021 V2EX