困ったことにGreasemonkeyはdocuemnt-startのタイミングでwindow.navigator.userAgentを置換しても勝手に元に戻ってしまって役に立たなかった。Tampermonkeyは、動いた。 世の中には3つの嫌われる行いがある。UAをパースしようとすること、UAによってサービスを変えること、やりもせずに諦めることだ。
- // ==UserScript==
- // @name fake windows for fools
- // @version 1
- // @include https://news.yahoo.co.jp/*
- // @include https://s.yimg.jp/*
- // @run-at docuemnt-start
- // @grant none
- // ==/UserScript==
- // Copyright waived using CC0 1.0 Universal, 2020 dyknon
- let ua = window.navigator.userAgent;
- let newua = ua.replace(")", "; fake Windows NT 10.0)")
- .replace("Linux", "L1nux");
- Object.defineProperty(window.navigator, "userAgentOriginal", {value: ua});
- Object.defineProperty(window.navigator, "userAgent", {value: newua});