google translate 㧠HTML tag ã€ãã®æååãæ¥æ¬èªãžç¿»èš³ãããšã翻蚳çµæã¯å ã
ãšå€ã§ãã
ããã¯ãã£ãšæ¹åãããŠããŸããã
ããã¯ãããããªããšæãã
ããããããããªããšæãã
ããã¯ãgoogle translate ãååŠçãšããŠã翻蚳åã«å¯Ÿè±¡ã®æååã®HTMLã®ã¿ã°ããã£ããã¿ã°ãã¯ãããŠã翻蚳åŸã«ããã¹ãã«ã¿ã°ãå ã®ããã«æ»ããšãã«ãæ¥æ¬èªã®ãããªæåã 2 ãã€ãã§è¡šãå Žåã«ã€ããŠèµ·ããã®ã ??
ãããšã翻蚳åŸã«èªé ãã
èšäº
ãé¢ãã
ãããããã¡ã®
ãwebããŒãž
Article
-> about
-> Our
-> web page
ãã
ããããã¡ã®
ãwebããŒãž
ãé¢ãã
ãèšäº
Our
-> web page
-> about
-> Article
ã«å€ããèšèªã ãããé¢ãã
ãèšäº
ã¯ã¿ã°ã®æ§é ã®ãªãã§ã®äœçœ®ã®å€åã«å¯ŸåŠã§ãããã¿ã°ã®å€ãžã¯ã¿åºã¡ããã®ã ãããã
<p><li><ul>
Article
about
Our
<strong>
web page
</strong>
</ul>
</li>
</p>
<p>
<li>
<ul>
<strong>
webããŒãž
</strong>
</ul>
</li>
</p>
èšäº é¢ãã
( ããããã¡ã®
)
ãšããããšã«ã€ããŠããããããã°ããèããã
ãããããã²ãããæ£èŠè¡šçŸã®ãã«ãŒããã©ãŒã¹ã¢ã¿ãã¯ãã€ã¥ãã ããã
ãµã³ããªãŒãã»ããã ã¢ã€ã¹ãã£ãŒãµã¯ãŒããã®ã¿ãªããã
æ€èšŒæ¹æ³ãæ¢ãããã®ææãåå³ãããšã³ãã¬ã¹ã«æããæ¢æ±ãªã®ã§åé·ã
https://rubular.com/r/9NNxkMhYWcN5IO
https://rubular.com/r/LZOG1DfF4BB4y8
https://rubular.com/r/oYFr9NWAqBZ15c
https://rubular.com/r/Jzs18Sz6x0FVlg
ãªããããªããšãããŠããã®ããã»ãšãã©äžæ¥ãã£ãŠã¿ããããŸãã©ããã£ãŠ HTML ã®ã¿ã°ãæ€ç¥ããŠãã¿ã°ã®ãªãã®ããã¹ããåãåºãã®ãèŠããã£ããããã ã£ãã
ãšããã§ãããããªã²ãšãããã¯ãåããããªã°ãŒã°ã«ç¿»èš³ã§ã¿ã°ä»ãã®æç« ã翻蚳ãããšåé¡ããããïŒãšãã質åãããŠãããçŸåšãŸã§ã
ããããã«å¯Ÿå¿çãèªãåãããŠããããã ã£ããã¹ã¿ãã¯ãªãŒããŒãããŒãšãã§æ¢ããšããã€ãèŠã€ããããŸããã©ããã£ãããä»»æã®æååãèªåçã«ç¿»èš³ãããã«ãšã¹ã±ãŒããããã ã®ãããã®æå®æ¹æ³ã¯ïŒãšãã
質åææãã°ãã°ãã§ããããçºããŠãæ·±ãã¯èªãŸãªãã
ãããã«ããããããããŸã§ç¿»èš³ããªã ã§ã»ãããš google translate ã«æ瀺ã§ããããããã
äžæŠå šéšã®ã¿ã°ãå€ããŠããŸãããšã«æ»ãã«ã¯ã©ãããæ¹æ³ãããã®ãïŒãšããããšãèããã®ã«ãæ£èŠè¡šçŸã§ã®ã¢ãããŒãããã£ãŠã¿ãããšãããããã£ãŠãã
ãã£ãŠãããã¡ã«ãxpath ãªãã°ããã®ãŸãŸã¿ã°ã¯éžãã§ã¯ãããããã€ãããããšãèãå§ãããæ£èŠè¡šçŸã§çããåºãªããã¡ããã
æ£èŠè¡šçŸã ãšãããããšããºã«ã²ãŒã ãšããŠããç¶ããŠããŸãããxpath ãxml ã§ã®æäœã ãšå°çšã®ã©ã€ãã©ãªã§ç»äžçãªæ¹æ³ã§ããã¹ãã®æœåºãã¿ã°ä»ããã§ããã
diary
ãèªã¿ã€ã€ Python 㧠æ£èŠè¡šçŸãš xpath ã®äœæ¥ã
xxxx = re.finditer(r'((\.|\d|\w|&|\=|[ \(\)\-;:,%#+âŠ"ââââ\'&\?\!\.])*(?!([^<]*>)))',str(lines))
察象ã«ããæååã®å
容ã«ãããããå«ããèšå· (-``;``:``,``%``#``+
) ãªã©æ£èŠè¡šçŸã®æ¡ä»¶ã®äžã«è¶³ããŠããããšã«ãªãã
example:
ãã¹ãæåå
<p>We plan to add further features to our <a href="https://github.com/bellingcat/tiktok_hashtag_analysis">TikTok tool</a> over time. Anyone who would like to contribute to our tool and help perfect it is invited to do so. See the corresponding Github repositoryâs <a href="https://github.com/bellingcat/tiktok-hashtag-analysis/issues">issues</a> page for potential contribution ideas.</p>
regexp:
\b((\.|\d|\w|&|\=|[ \(\)\-;:,%#+âŠ"ââââ\'&\?\!\.])*(?!([^<]*>)))
https://rubular.com/r/AtoRK9t0pFeZaU
ãã®äŸã§ã¯ãHTML ã®ããŸããã® <p>
ã§ã¯ããŸã㊠</p>
ã§éããããäžã«æŽã«ã¿ã°ãããå Žåã§ãã¿ã°ã§ã¯ããŸããŠããå
容ãæœåºããã
ã€ãŸããã¿ã°ãé€å»ããæç« ãäœãããã§ãããããŠã§ããæç« ã¯ã¿ã°ã®åœ±é¿ã¯åããã«ç¿»èš³ãããã
We plan to add further features to our Ticktok tool over time. Anyone who would like to contribute to our tool and help perfect it is invited to do so. See the corresponding Github repositoryâs issues page for potential contribution ideas.
ãã°ã«ã¯ããŸããæååããã®ããã«æœåºãããã
ããã google 翻蚳ãããš
[ja] æéã®çµéãšãšãã«ãTicktokããŒã«ã«ãããªãæ©èœãè¿œå ããäºå®ã§ããç§ãã¡ ã®ããŒã«ã«è²¢ç®ããå®ç§ã«ããã人ãªã誰ã§ããããããããã«æåŸ
ãããŠããŸããæœ åšçãªè²¢ç®ã¢ã€ãã¢ã«ã€ããŠã¯ã察å¿ããGitHubãªããžããªã®åé¡ããŒãžãåç
§ããŠã ã ãã
ãšããæç« ã«ãªããŸããããããŠãã¿ã°ã«ã¯ããŸããŠãããã®ãã©ãã ã£ãã®ããã©ãããã¿ã°ã«ã¯ããŸããŠããã®ãã«ã€ããŠã¯ããããªããªããŸããã
ã¿ã°ã«ã¯ããŸããç¶æ ã®ãŸãŸ google 翻蚳ãããš
[ja] <p> <a href="https://github.com/bellingcat/tiktok_hashtag_analysis"> tiktokããŒã«</a>ã«ãããªãæ©èœãè¿œå ããäºå®ã§ããç§ãã¡ã®ããŒã«ã«è²¢ç®ããå®ç§ã«ããã人ãªã誰ã§ããããããããã«æåŸ
ãããŠããŸãã察å¿ããgithubãªããžããªã®<a href="https://github.com/bellingcat/tiktok-hashtag-analys/issues">åé¡</a>æœåšç ãªè²¢ç®ã¢ã€ãã¢ã«ã€ããŠã¯</p>ãåç
§ããŠãã ãã
ãã®ãããªæç« ãçæãããŸãããããããã«èªé ããããŠããŸãã
ã©ã¡ãããšãããšã¿ã°ãé€å»ããããšã«ç¿»èš³ãããšèªç¶ãªæç« ã«ãªããŸããã
ãããããã§ã¯ãå°ã足ããªããšããããšã«ãªããŸãã
ããããªããšããããããšããããšãã¹ã¿ãŒãã©ã€ã³ã§ãã
ãããããã¹ã¿ãŒãã
2ã€ã®ãªã³ã¯ãå«ãŸããŠããŠãããããTikTok tool
ãš issues
ããæååã«åã蟌ãŸããŠããŸãã
<a href="https://github.com/bellingcat/tiktok_hashtag_analysis>
TikTok tool</a>
<a href="https://github.com/bellingcat/tiktok-hashtag-analys/issues">
issues</a>
ããã¯ãåç §ãããããšãæåŸ ããŠåã蟌ãŸããŠããŸããããæãèœã¡ãŠããŸããšãæç« å šäœã§æå³ãåãåããªããªã£ãŠããŸããŸãã
ãŸããããšã®åæãèªãã§ãããããããããããã ãªãšãããçšåºŠã«å€ãªæç« ã§ããã
äŸãã°äŸã«ããæç« ã®å Žåã
<p><a href="https://github.com/bellingcat/tiktok_hashtag_analysis"> tiktokããŒã«</a>ã«ãããªãæ©èœãè¿œå ããäºå®ã§ããç§ãã¡ã®ããŒã«ã«è²¢ç®ããå®ç§ã«ããã人ãªã誰ã§ããããããããã«æåŸ
ãããŠããŸããæœåšç ãªè²¢ç®ã¢ã€ãã¢ã«ã€ããŠã¯å¯Ÿå¿ããgithubãªããžããªã®<a href="https://github.com/bellingcat/tiktok-hashtag-analys/issues">åé¡</a>ãåç
§ããŠãã ãã</p>
ãšãªãã°ãåæ Œãšããåºæºã§ããããŠãããšããããšã«ãªããŸãã
ããããšããã§ãããã©ãããªããšãªãåã£ãŠããµãã«ããŸããããããªæç« ã«ã€ãããããŠããŸãã®ã§ãã©ã£ã¡ããšãããšããããŠãããšæ°ã¥ããªãæç« ã«ãªã£ãŠãããšãã«ãŸããã®ã§ãããã§ã¯ã ãã§ãããã
1 pass ( 1 åã®äžé£ã) ã§ã¯ã翻蚳ãããæç« ãã䞊ã³ããã§ãã¯ããŠãããããªãšãããçŽãã®ã¯ããããããã§ãã
ã¿ã°ãå€ããŠç¿»èš³ããããã®ãšãã¿ã°ä»ãã®ç¶æ
ã§ç¿»èš³ããããã®ãæ¯èŒããã
ãªã©æ¹æ³ã¯å¥ã«ããŠå¿
èŠã«ãªãããšãããããŸãã
ãããããããããŠèããŠã¿ããšãã¿ã°ãã€ããªããšããããšããããããããªããšããã¢ã€ãã¢ãæµ®ãã³ãŸãã
ãªã³ã¯ãæç« ã®äžã«åãŸã£ãŠããå Žåãããã¯æåã¹ããŒã¹ã®ç¯çŽãšããããèŠãæãã¹ãããªãããããã§ããªã³ã¯ã®åã蟌ãŸããæååãã¯ãªãã¯ãããšãžã£ã³ããããšããããšã§ãããã¯å¥ã«ãã©ã°ã©ãã®æåŸã«åè泚éãšããŠãã£ãŠãããããïŒãšããèªååºæºãèŠããŠããŸãããå°å·ç©ã ãšãããªã£ãŠãããã®ã ããåç §ããåŒçšæç®ãªã©ã®ãããªæãã§ã
ãšããã¢ã€ãã¢ãå®éã«èŠãŠã¿ããšã
ãã£ãŠã¿ãã:
æäžã«åã蟌ãŸããŠãããªã³ã¯ããã©ã°ã©ãã®çµããã«åæããæžåŒãlink :
ãšãªã£ãŠããéšåã¯ããšã«ããèšäºã«ã¯ååšããªãã
æ¯èŒ:
https://www.npr.org/2022/06/17/1105827493/julian-assange-extradition-explained
ãã®ãããªãã©ã°ã©ãããã£ããšããŠã
<p>We plan to add further features to our <a href="https://github.com/bellingcat/tiktok_hashtag_analysis">TikTok tool</a> over time. Anyone who would like to contribute to our tool and help perfect it is invited to do so. See the corresponding Github repositoryâs <a href="https://github.com/bellingcat/tiktok-hashtag-analysis/issues">issues</a> page for potential contribution ideas.</p>
python ã® re ( æ£èŠè¡šçŸããã±ãŒãž ) ã ãšãããšãã©ã°ã©ãã®ããã¹ãã lines ã«ã»ããããŠã
ãã®ããã«ãããšãåã蟌ã¿ã® url ãš ããã¹ã ( TickTok tool / issues ) ãåãåºããã ããã
check! :
https://rubular.com/r/vyONqT7bU7fzvG
https://rubular.com/r/c4DoPWfam3JiP2
æ£èŠè¡šçŸãªã®ã§ãpython 以å€ã§ããã©ã®ããã°ã©ãã³ã°èšèªã§ãåããããªåŒãæžãã°åãããã«åãåºããã
äžæ°ã«ããã®ã§ã¯ãªãã¹ããããåã㊠2 pass ã§ããã°å¯èœãªã¯ãããšã§ããã€ããã§ã¢ã€ãã¢ãå®è·µããŠãããš 10 æé以äžããã£ãŠããããã§ããã
google ã®ç¿»èš³ã䜿ã£ãŠ google ã®ç¿»èš³ãµãŒãã¹ä»¥äžã®ã¯ãªãªãã£ãŒã«ããè©Šã¿ã ãšã¯ãgoogle ã®ç¿»èš³èœåãåããŠãæ§èœã¯ããããªãã®ã ãã©ã¡ãã£ãšè¯ãããããšããããšãæããŸãã
åæãªææ³ã§ããããã®ç¿»èš³ã®çµæãæå³ã®ããããªããã®ã«ãªããšããåé¡ã¯ãäœåãè±èªããæ¥æ¬èªãžç¿»èš³ããŠããŠæã£ãŠãããã§ããã翻蚳çµæã¯æªããªããã§ããæåŸã«ãããŠãããšããããšãªã®ã§ãã
ããã google ã®æ æ°ãšåŒã³ãŸããä»®ã«ã§ããã
æ æ°ãšã¯ãæ©æ¢°åŠç¿ã足ããªããšããããããåé¡ãšã¯å¥ã§ããã£ãšåºæ¬çã«ã人éãœãæ æ°ã§ãæåŸã«éŽãåãããŠãããããã£ãããšã®éšåã§ãããã©ããããããããªããšãããšãã§ããããã£ãããšãšåããããªæ æ°ãã§ã»ã£ãŠããããŠããéšåãããã調æŽãããšã¯ãªãªãã£ãŒãäžãããšããããšã§ããå
·äœçã«ã¯æ¬ã®æ ¡æ£ã¿ããã«ããªãçŸåãšèªé ã®ãããéšåãèŠã€ããŠæå³ãéãããã«çŽããšããããšããã«æžã¿ãŸããåéã®ããè±èªã®æ¬ãªã©ç¿»èš³ããå Žåãããã®éšåãã¯ãªãªãã£ãŒã¢ãããããŸãã翻蚳ã®èšèã®éžã³æ¹ã®çŸããã®ã¯ãªãªãã£ãŒã§ã¯ãããŸããã
ããŸããã£ãŠããããã«èŠããããã©ã°ã©ãã®äžã§ãªã³ã¯ãåã蟌ãŸããŠããããã©ã°ã©ãã®çµããã«ããæäžã®ãªã³ã¯ã«å¯Ÿå¿ãããªã³ã¯ãçªå·ããµã£ãŠãããŠããã
ãããŸã§ã®è©Šè¡é¯èª€ã®éçšã§ããªããºã¬ãçããã®ãã«ã€ããŠèŠããŠããã
åé¡ã¯ã翻蚳åãšç¿»èš³åŸã§æç« ã®äžã®èªé ãå€ããããããã¿ã°ã®å
¥ãåæ§é ã®äžã§èµ·ãããšãã¿ã°ãæãåºããŠãæ°ãã«ã¿ã°ã®äžã«ã¿ã°ãå
¥ãããšããäœæ¥ãå¿
èŠ ã«ãªãã
ãããæšæºç㪠xml ããŒãµãŒã§ç°¡åã«ããããšãããšã§ããªãã®ã§ã¯ãªãããšæãã
ã§ãããããšãã£ãŠããŸã£ãŠããã®ã google translate ã§ãããã¯åé ã§èŠãããã«ã§ããŠããªãã
æ°ãã«ã¿ã°ã®äžã«ã¿ã°ãå ¥ãããšããã®ã¯ããã®å Žåãã¿ã°ã®äžã«ããããã¹ãã®éäžã§ä»»æã®æååãåãåã£ãŠãå¥ã®å Žæã«ç§»åããŠããã®å Žæã«ã¿ã°ãæ°ãã«åã蟌ãã§ãããã¹ããæµã蟌ãã§ãã¿ã°ãéããŠããšããããšãããã
Rf. https://www.w3resource.com/python-exercises/BeautifulSoup/python-beautifulsoup-exercise-30.php
xml ããŒãµãŒã§ç°¡åã«ããããšãããšãéããã¿ã°ã®åŸãã«ã¿ã°ã append ããããã¿ã°ã®åã« insert ããæ©èœã¯ãããã¿ã°ã«ã¯ããŸããããã¹ãã®éäžã§ãã¿ã°ãã€ããæ©èœã¯çšæãããŠããªãããã ã£ãã
Rf. https://www.geeksforgeeks.org/insert-tags-or-strings-immediately-before-and-after-specified-tags-using-beautifulsoup/
ãããããšãã¿ã°ã®äžã®ããã¹ãã®éäžã«ã¿ã°ã¯äœããªããšããããšã«ãªããã¿ã°ã®äžã«ããã¿ã°ã¯ç§»åã§ããããããã¯ã¿ã°ã®ãŠãããããšã®ç§»åã§ãã£ãŠãããã§ã¯ããã¯ã¹ãã®ãã®éšåããããããŸã§ããšããããã«ã¯ç°¡åã«ã¯ã§ããªããããã€ã®å¡ã¿ãããªæé ã§ã¯ã§ããããïŒ
ãããŠãŸãäžæ¥ãããã§ãã°ããããã¯ããŠãããããããªããããšèããŠãã®ãèããŠãªãã®ããæã ãåããŠãæèã¯ç²ããã£ãŠãããšããç±ãæ¥äžãæ°ãã«æ¬ãå±ããã
倧ããã®ã§ãã¹ãã«å
¥ããŸãããšããããããã£ããå°ãéããŠã¿ããšã倧ããããã¶ããããªãµã€ãºãšæã£ãŠãã倧ããã® 1,5 åãããã¯ããã
ããããã£ãã®ãã
1999 幎ã«åºçããã Ruby ã®æ¬ã ãã©ããªããšãæžãããŠããã®ãæ°ã«ãªã£ãŠããã®ã§ãèŠãŠã¿ããšããªã«ãã C èšèªã§èª¬æããŠããããªã«ããUNIX ã®ããã¥ã¢ã«ã£ãŠãããªé¢šãªã®ãããªãã®ããªïŒãšããæãã® Ruby èšèªä»æ§æžãšãããããªãã®ã ã£ãã
Rf. https://next.rikunabi.com/journal/20180402_t21_iq/
延ã ãšãªããŸãããŠããã®ã¯ python ã®æ£èŠè¡šçŸã®æžãæ¹ãããããããªãã®ãšãæãã®ãšãããã¶ãæéãéããŠãããšããçŠç¥ã ã£ãã
ãŸãæ¥ä»ãããã£ãŠãä»æ¥ã¯éšã
åºããšè¡šçŸãã python ã®æ£èŠè¡šçŸããããã«ãããšãã㯠match object ããã®æååã®åãã ãæ¹ã«ã€ããŠãã調ã¹ãªããšãããããŠãŠãæœåºã§ããŠããªããªã©ãsub
ãš string replace
ã®å¯Ÿè±¡ãšããæååã®éããªã©ãstring replace
ã䜿ããšãã«ã¯ string find
ã䜿ã£ãŠå¯Ÿè±¡æååã«çœ®ãæãããæååãå«ãŸããŠããããã©ã°ãããŠãäžã§äœ¿ãã®ãããã®ãããããªãã
2 pass ã®æ¹åŒ ... åŸè¿°
ãã¹ã :
Extraditing Julian Assange would be a gift to secretive, oppressive regimes
Peter Oborne
https://www.theguardian.com/commentisfree/2022/may/20/extradite-julian-assange-investigative-journalism-wikileaks
2 pass ãšããã®ã¯ããžã¿ã«æ åã®ãšã³ã³ãŒãæ¹æ³ã®ããšã§ã
äžæ°ã«æåããå§çž®ãå§ããæ¹åŒã® 1 pass ãšã³ã³ãŒããšæ¯èŒããŠããŸãæåã«å
šäœã®æé軞ã®ã«å¯ŸããŠæ åã®ç»åã®ç§»ãå€ãããèšé² 1 pass ããããå®äºããŠããã次ã«èšé²ããŒã¿ã§æé軞ã«å¯Ÿããå€åéã«åãããå§çž® ( ãšã³ã³ãŒã ) ããã 2 pass ã§å®äºããã¿ã¹ã¯ã®ããšããããŸããçŽ 2 åã®æéãããããŸãã
google translate ã§èš³ããŠçµããããšããã®ã 1 pass ãšãããšããããååŠçã«ããŠå¥ã®æ段ã§ä»äžãããããšããããšã 2 pass ãšããŸãã
google translate ã§ç¿»èš³ãããš tag ä»ããããããã¹ãã¯ã翻蚳åŸã«æã®äžã§ã¯ããžã·ã§ã³ããããŸãããã»ãŒã ããããåŸæ¹ã«ãããŸãã
ã§ãã®ã§ãæç« ã®äž»èªã«ãããéšåãæ¶ããŠã
ããããèæ¯ã§ãã移åããŸããäž»èª
ã®ãããªåœ¢ã«å€åœ¢ãããŠããŸãã
ããããç®æãããã°ãåŸããããããã£ãœãã®ãèŠã€ããŠãæ¶å€±ãããšæãããæäžã®ããžã·ã§ã³ã«çœ®ãæããŠãåæãèªãã§ç¢ºèªããŠ... ãšããäœæ¥ãå¿
èŠã«ãªããŸãã
ããã 1 pass ã¯ãªãªãã£ãŒã§ãã
2 pass ã«ããã«ã¯ã翻蚳çµæã®æç« ã«ã€ããŠã¯ç¿»èš³æã䜿ããŸãããªã®ã§ãæããã«ãããŠããŸãçµæã«ãªãåå ã®æäžã®ã¿ã°ãäºãå
šãŠåãé€ã翻蚳ããŠããããŸãã 1 pass ã
ãããŠã翻蚳çµæã®ããã¹ãã«å¯ŸããŠã¿ã°ãè¿œå ãããšããåŠçã 2 pass ç®ã§ããŸãã
ãããããããšãããšãã¿ã°ãããšããã€ãçŽãã®ã§ãã¿ã°ãåãé€ãåã«ã¿ã°ãæäžã®ã©ãã«ãã£ãã èŠããŠãã å¿
èŠããããŸãã
ããããæååãã«ãŠã³ãããŠèšé²ããŠãããšããŠãã翻蚳åŸã«ã¯ãå¥ã®èšèªã«ãªã£ãŠãèªé ãå€ããããã«ãèšé²ããŠããããžã·ã§ã³ã«ã¿ã°ãæ»ãããã«ã¯ãããªããªããŸãã
ã©ãããã°ãå€ãã£ãŠããŸã£ããã¯ã¹ãã®ãªãã«æ£ããä»»æã®å Žæã«ã¿ã°ãæ°ãã«ã€ããããã§ããããïŒ
ãšãããšãããŸã§æžãããšããã§ãæžã蟌ããªããªã£ãã
https://forest.watch.impress.co.jp/docs/news/1418927.html
ã©ããã cloudflare ã®ãããé害ããã£ããããã
ã³ã³ãã³ãããªããªãŒãããã¯ãŒã¯ã§æ¯ããããŠããäžå¯Ÿå€æ°ã®ãªãã¬ã¯ã·ã§ã³ã§ã³ã³ãã³ããªããªãŒãããã¯ãŒã¯ã競åããŠãã®ãæä»ãããšãèœã¡ããšå
šéšãºã³ãšæ²ãã
ããããæ²ãã ã¿ããäžæéäœã
ã§ããããïŒ
ãšãããšããããã
ã¿ã°ãæ°ãã«ã€ãããã ã§ããããïŒ
ã©ãã«ã€ããããã®ãããããªããã§ãèšèãããã£ãŠãã人éãªããããã£ãŠããã®ã¯ èŠãŠèããã ããããŸãã
ãããã ãã§ããããããã«ãããããããã§ããã
æ°ãã«
èŠããŠãã
ãšè¡šçŸããŸãããèŠããŠãããããšããèŠãŠèããŠãæ°ãã«ãã®å Žæã«ã¯ãã¿ããã ãããããã«ãããããããããšãèªåçã«ã§ããŸããã
ã¡ã¢ã§ã貌ãä»ããŠãããããšã»ãã®äººã§ãã§ããã
ã¡ã¢ã ãã ãšãããããªãå Žåãããã®ã§ãç®å°ããããšããã§ããã
ã³ã³ãšããå Žæã«ãèå
ãã³ã§å¡ã£ãŠããŸããšããå¡ã£ãè²ã ãæ®ã£ãŠãèšèã¯å€ãã£ãŠããè²ãã€ããŠããããã®èšèãããããªããŠãã§ããŸããã
ããéœåãããæ¹æ³ã¯ããã㪠...
ãããããã¡ãã£ãšèããŠã¿ãŠããæãã€ãã®ã¯ãã¡ã¢ãæ®ãæ¹æ³ã
æ©æ¢°ç¿»èš³ã®ããšãèããŠããã®ä»çµã¿ãæ³åããŠãããšããªãããæ€çŽ¢ãšã³ãžã³ã«äŒŒãŠããããšããã€ã¡ãŒãžããããŸããã䌌ãŠããã©ãã ããå
šç¶ç¥ããŸãããã©ãã䌌ãŠããããªæ°ããããšãããã€ã¢ã¹ã®ããã€ã¡ãŒãžã§ããåããããªä»çµã¿ã ã㪠( æã蟌㿠) ãã©ããã£ãŠããã ããïŒ inverted index ãŠãªã«ïŒãšè±ç·ããŠãããšãæ€çŽ¢ãšã³ãžã³ã® SEO ãšãã®ã©ãã§ããããŠã¶ãæ
å ±ãããæã£ãŠãããŸãã
ãªã«ã䌌ãŠãããšæã£ãã®ããã©ããïŒãšããã€ã¡ãŒãžã«è¿ããšããã«ã ãåãå
¥ã£ãŠãããŸããè±ç·ã§ãã
翻蚳ã«å¿
èŠãªã®ã¯ãèšèãã»ã³ãã³ã¹ã«å¯ŸããŠã®å¥ã®èšèã®å¯Ÿå¿ãèŠã€ããããšãããæã瀺ãããšã§ãããäžå¯Ÿäžã«ããããã§ã¯ãªããŠãããããããäžãããšããããçµããã§ããããšãããŠãããå
šéšã®èšèãç¥ã£ãŠãããªãã°ãããã§ããããªããšãªããã®èŸºããšããèŠåœéãã®ãã®ãå«ããã®ããã¯ããã®ãžãã§ã¯ïŒãšãšã£ãŠãããã®ã颚åæ·ãåºããŠããŠèŠããŠããããèŠã人ã®ããããããªããã©ããã£ã¡ããïŒãšããåå¿ã«ãã£ãŠåŠç¿ãããŠãããããªãããã ãšãæ¬åœã¯ããã£ãŠããªããŠãããªããšãªãæ£è§£ã«è¿ãããªé°å²æ°ã¯ã€ããã ããã
æ©æ¢°åŠç¿ãæ€çŽ¢ãšã³ãžã³ããã®ãžãåããããªã¢ãããŒããããªãããªïŒãšããã€ã¡ãŒãžã
åºåçµæãå ¥åãšã¯å€ãã£ãŠããŸã£ãŠãå ¥åæã®æ¡ä»¶ã§ãã解空éãšã¯ã¡ãããã§ãããçšåºŠåãåéã®ãåããããªäœçœ®ã«ããã¯ããšãããã®ã èŠã€ãããã ãããã
ããããããšã ããªããš
ããã«è±ç·ã
ã§ã¯ããã®èšäºããŒãžã翻蚳ããŠã¿ãŠãã ããã
google translate ã§ã
ãããŸã§èªãã²ãšã¯ãããããããããŠãããããããªããé¢ä¿ã®ãªãããšã°ãããã©ãã©æžããŠãã ããããªããããšãã ããããªãã ãããã®èšäºã®ã¿ã€ãã«ã¯ïŒãµãããŠãã ãã§æå³ãªãããããªãã®ïŒãšã
ã§ãããããŸã§èªãã§ããšããããããã¯ããªãå€ãã£ãŠããšæãã®ã§ããã£ãŠã¿ãŠãã ããã
ããããããšããã ãã§ããgoogle translate ããã®ã¯ã
"google 翻蚳"
ãã£ãŠã¿ãæ°ã¥ããããšãããã°ããªããšãªããããŸã§ã®ããšãšç
§ããåãããŠã¿ãŠãããã£ãããšãªãã§ããïŒ ãªã«ããããããïŒ ãšãããã©ããšãã
説æã¯ããŠãªããã©ãã
éèŠã§ãªãããšãæžããŠããŸããã©ããããå®å
šã«ç¡é§ãšããã€ããã§ããªããã¡ãã£ãšããšãã説æããããã ãã©ããªããã§è¿œã£ãŠãããšãã©ãããããŠãã©ããã£ãŠïŒãšããéããã«ãªã£ãŠãããšæããã§ãã
ãšãã«ãã©ããããïŒãšããéšåã ããã¢ãããŒã·ã§ã³ã§ããã®éšåãã©ãã§ãããããšã ãšæããå Žåã¯æå³ã®ãªãããšã§ãåå®ãªåæ©ããªããã°ãããããããããšãŠã¯ãªããšããã¥ããŠããŸããŸããã
ããæ¹ã«ã€ããŠã¯ãããããªã¢ãããŒãããããŸããã( ããé«ããªã ) çŸæèã§ãã®ãªã®ãªããã¯è¶ ããŠãããã ããªæ¹ãžãšããç¬æžéè¶ããŠãããšãããšããéšåãç¡èŠã§ããªããšããã§ããããç¡èŠãããŠãããšããããšã«å¯Ÿããã¢ãããŒãã§ããã£ãŠã¿ããšãããšããã«ããŠããã®ã ãšæããŸãã
Cloudflare ããããé害ã«ãªã£ãŠããããªãã®ãèœã¡ã圱é¿ã§ããŸãããŸãã£ãŠãã¿ããªã®èªå翻蚳ããšãããã®ãç¥ã£ããç¥ã£ããã©çŸåšã€ãªãããŸããã
https://twitter.com/minhonMT/status/1539168654947848193?t=JSzxxvJLz48YR2MUP7pwtA&s=19
æ°ã«ãªããŸãã
ãã¹ã :
CloudFlair: Bypassing Cloudflare using Internet-wide scan data
christophetd 18 January 2018
https://blog.christophetd.fr/bypassing-cloudflare-using-internet-wide-scan-data
Rf. https://graphemica.com/ð
Rf. https://unicode-table.com/en/
Rf. https://softwareengineering.stackexchange.com/questions/190409/a-unicode-sentinel-value-i-can-use
æ€çŽ¢ãšã³ãžã³ãinverted index ããããæ€çŽ¢ããŠãããšãã¢ã«ãŽãªãºã å
šè¬ã®ããšãæ±ã£ãèšäºãªã©ãç®ã«ã€ãã
èŠæ
£ããªãããŒã¯ãŒãã«ãçªå
µ ( sentinel value ) ãšããã®ããããçªå
µã調ã¹ããšãã±ã£ãšèŠãã€ã¡ãŒãžã§ãããããããæãã ããšæãã€ããã
çªå
µã«ã€ããŠã¯ããç¥ããªããã©ãã€ã¡ãŒãžãšèããŠãããã®ãšãã²ã£ã€ããããšã¯ãããŒã¯ãŒãã«å¯ŸããŠããŒãã³ã°ãããšããããšã ã£ãã
ä»ãç®å°ãã€ããããã®ããã¯ã¹ãã®äžã«ããããã®ç®å°ã€ããããã®ã¯ããã®ããšå å·¥ãããŠãèŠåããã€ããªããªãããã ãã©ãç®å°ã®çŽ æãšããŠåœ¹ç«ã€æ©èœçãªãã®ã¯ãå å·¥ãããŠã ããã ãå€åããªãã§èŠåããã€ããã®ããããã¯ãå å·¥åŸã®åœ¢ç¶ãäºãããã£ãŠãããã®ãã ãç®å°ããã¯äœãããªããŠããã«æ¶ããã«ããŠããããããã
çªå
µãã©ãã ãç¥ããªããããã¯ã¹ãã«ããŒã¯ä»ãããšããããšã¯ããã®ããŒã¯ãŒãã®ååŸããäœãã§ã¯ãããšããã
ããã§ããã£ãããã®èšäºã google translateã§ç¿»èš³ããŠã¿ãŠã»ãããšæžããã
ãã£ãŠã¿ããããã£ããšæãã
ãã£ãŠã¿ããã©ããªãã®ããšãããããªãã£ããšãã人ã¯ãå°ãããã®ãããã²ã£ããããã£ãããã ãšæãã
èšäºããšæžãããã翻蚳åŸã«èšäºãäžããäžãŸã§ãã§ãã¯ããå¿
èŠã¯ãªããã
ãŸããæ¥æ¬èªããè±èªã«ç¿»èš³ããããã©ãè±èªããŸã£ããèªãŸãªããŠããããããã¯ãå¿
èŠããªãã
èºèºãã人ã¯ãäžããäžãŸã§ãã§ã¯ãªããäžã ãèŠãŠã»ããã
ã¯ãããã©ã€ ã¢ã²ã€ã³ã
google translate
æ¥æ¬èªããè±èªã«ç¿»èš³ãããŠãããšãã«ãå€ãããªããšããããããŸãã
ã€ãŸããå€ãããªããšããããšã¯ãç®å°ã«ã§ããŸãã
ãããªã£ãŠãããšãã§ãã
ðµâœð¡âœâžâŠâŠGoogle translate ã®ç¿»èš³åŸã®æåã®ãªãã³ð¡âŠâŠâ§{counter}â§âž
ðµâœð¡âœâžâŠâŠ ããå§ãŸã£ãŠãð¡âŠâŠâ§ åºãŠããæåãŸã§ãæãåºããšããããšãã§ããã®ã§ã
æç« ã翻蚳ãããŠããå€æŽãããå
容ã«ã€ããŠããããªããŠãç®å°ã«ãªããšããããšã«ãªããŸãã
/ðµâœð¡âœâžâŠ{2}(.+?)ð¡âŠ{2}â§\d+â§âž/
https://rubular.com/r/njSea7ta3OM9yv
ðµâœð¡ ãªã©ã¯ unicode æåã§ãæåã§ã¯ãããã©ç¿»èš³æã«ã¯ç¡èŠããããããªã®ã§ã翻蚳å®äºåŸãã®ãŸãŸæ®ãããããæ¶ãããŠããŸããã§ãæ¶ãããŠããŸããšäœ¿ããªãã§ããã1 ã€ã®äŸãšããŠéžã³ãŸããã
ããããããšã«äœ¿ããããªãã®ãšã㊠unicode æåãããããã§ãããçªå
µ ( sentinel value ) ãšããŠäœ¿ãããŠãããããªã®ã§ãnull, unicode ãããŒã¯ãŒãã«ããŠãããæ€çŽ¢ãããšã§ãŠããŸãã
ããããããšã«äœ¿ããã®ãã©ããã¯ããŠãããçºããããšãã°ãªã
Egyptian hieroglyphs
https://en.m.wikipedia.org/wiki/Template:Unicode_chart_Egyptian_Hieroglyphs
ããããµãŒãã§åºãŠãã sentinel value ( çªå µ ) ã«äœ¿ãããã®ã¯åèçšåºŠã«èŠãŠãããŠãæ³ååããã£ãŠããããããããããªãïŒãšããã®ããã©ã€ããæ¹ããæéã¯ææ矩ã«äœ¿ãããã§ããã©ããããã®ããã©ãã確ãã§ã¯ãªãã®ã§ã
Crieitã¯èª°ã§ãæçš¿ã§ãããµãŒãã¹ã§ãã æ¯éèšäºã®æçš¿ããé¡ãããŸããã©ããªè»œãå 容ã§ãæçš¿ã§ããŸãã
ãŸããããããªèšäºãèªã¿ãããã©èŠã€ãããªãïŒããšããæ¹ã¯æ¯éèšäºæçš¿ãªã¯ãšã¹ãããŒããžïŒ
ææèšäºã販売ã§ããããã«ãªããŸããïŒ
ããããŸããšäœæ¥ãã°ãã¡ã¢ãé²æãæžãæ®ããŠããããæ¹ã¯ããŒãæ©èœããå©çšãã ããã
ããŒããšã¯ïŒ
ã³ã¡ã³ã