並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 299件

新着順 人気順

javascript string not includesの検索結果1 - 40 件 / 299件

  • 【令和最新版】令和のWebスクレイピング(クロール)【ベストプラクティス】

    こんにちは、株式会社FP16で結構コードを書いている二宮です。 最近Webスクレイピングのコードを色々な方法で書いているので、そこで得た知見をここに残しておこうと思います。 ほぼ毎日なにかのWebスクレイピングコードを書いています。 Webスクレイピング手段 Webスクレイピングには色々な方法があります。 私が最近主に使っているのはこの5つの手段です。 cheerioでHTMLを解析 Playwrightなどで要素指定でデータを取得する APIを見つけて叩く(バックエンドとの通信を再現してデータを取得) LLMでサイト構造を解析してデータを取得する Next.jsからのレスポンスに含まれているデータを解析して取得する これが令和のWebスクレイピングのベストプラクティスだと思っています。 これらの方法を、目標に合わせて使い分けています。 使い分け方 CheerioでHTML解析 JavaS

      【令和最新版】令和のWebスクレイピング(クロール)【ベストプラクティス】
    • パイプライン指向JSON処理プログラミング言語 jq - 檜山正幸のキマイラ飼育記 (はてなBlog)

      jq(https://stedolan.github.io/jq/)の紹介では、「JSON処理のワンライナー〈一行野郎〉としてめちゃくちゃ便利!」とアピールするのが定番です。もちろんそれは本当で、「めちゃくちゃ便利!」です。が、実は jq は、ワンライナー記述にとどまらない、かなり本格的なプログラミング言語です。 JSON処理のためのDSL〈Domain Specific Language | 領域特化言語〉なので、汎用言語ではありません。しかし、汎用言語が備えている言語機能の一部(関数定義、モジュールシステムなど)を jq も持っています。また jq は、独特で楽しいプログラミング・パラダイム -- “パイプライン指向”に基づいて設計されています。 この記事では、ワンライナーを超えた jq の使い方と、プログラミング言語としての jq の特徴を紹介します。長い記事になってしまったので、一

        パイプライン指向JSON処理プログラミング言語 jq - 檜山正幸のキマイラ飼育記 (はてなBlog)
      • MCPにおけるセキュリティ考慮事項と実装における観点(後編) - GMO Flatt Security Blog

        MCP logo ©︎ 2024–2025 Anthropic, PBC and contributors | MIT license はじめに こんにちは、GMO Flatt Security株式会社 セキュリティエンジニアのAzaraです。普段は、クラウドセキュリティや Web アプリケーションのセキュリティを専門領域にしています。 本稿は MCP のセキュリティを前後編で解説するものの後編です。前編では MCP のセキュリティを、利用者の視点から考察しました。 後編となる本稿では、攻撃者視点から脅威や攻撃手法を整理します。そのうえで、日々増えていく MCP Server の提供者が、これらの脅威やセキュリティ課題をどのように考慮し対策を講じるべきかを解説します。 また、GMO Flatt Securityは日本初のセキュリティ診断AIエージェント「Takumi」や、LLMを活用したア

          MCPにおけるセキュリティ考慮事項と実装における観点(後編) - GMO Flatt Security Blog
        • ブラウザで動作する地理空間データ処理ライブラリとして DuckDB-wasm を使い、 SQL を TypeScript で管理する仕組みを作る - newmo 技術ブログ

          newmo では、地図データや地理情報を扱う場面が多くあります。 たとえば、タクシーやライドシェアでは、営業区域のような営業していいエリアといった地理的な定義があります。 また、乗り入れ禁止区域のようなタクシーが乗り入れてはいけないエリアといった定義も必要になります。 これらの地理に関する定義は GeoJSON のような地理情報を扱うデータ形式で管理されることが多いです。 しかし、GeoJSONなどの定義をテキストとして手書きするのは困難です。 そのため、地図上に区域を作図するエディタやその定義した区域が正しいかをチェックするような管理ツールが必要です。 管理ツールは、ウェブアプリケーションとして作った方が利用できる環境が広がります。 このような地理情報は一度に扱うデータが多かったり、空間的な計算処理が必要になるため、専用の仕組みを使うことが多いです。 このような技術を、地理情報システム(

            ブラウザで動作する地理空間データ処理ライブラリとして DuckDB-wasm を使い、 SQL を TypeScript で管理する仕組みを作る - newmo 技術ブログ
          • OpenAI API ドキュメント 日本語訳|#2 GET STARTED 後編|Nobue Otsu|地方で老舗パン屋を第三者承継

            OpenAI API ドキュメントの日本語訳をこちらでまとめます。文字量の多いドキュメントなので、セクションごとに記事を分割しています。 今回は「GET STARTED 」のセクションからLibraries 、Models、TutorialsそしてUsage policiesを抜粋した後編です。 基本 DeepLで翻訳して、気になるところだけ書き換えています(ほぼ気になるところがないのが、DeepLのすごいところ)。原文との突き合わせができるようにはじめに原文を入れてますので、間違いなど見つけられましたら、ぜひご指摘ください。ご指摘箇所は随時反映させていただきます。 原文のリンクが有効になってますので、それぞれ必要な場合は原文リンクの方を参照ください。 前回のおさらいはこちら Python library|Python ライブラリWe provide a Python library, w

              OpenAI API ドキュメント 日本語訳|#2 GET STARTED 後編|Nobue Otsu|地方で老舗パン屋を第三者承継
            • Wasmはなぜセキュアなのか?

              Wasmはなぜセキュアなのか? 前回Wasmのバイナリを読んでみたが、実行時にどのようにセキュアに実行しているのか気になったので調べてみた。 とりあえず今回も公式ドキュメントを見ながら整理しつつ、実際のコードも無理なく辿れそうなところはwasmerの実装を参考に見ていきたいと思う。 Wasmの目指すセキュリティ とりあえず公式の記載を脳死で読解していく。 The security model of WebAssembly has two important goals: (1) protect users from buggy or malicious modules, and (2) provide developers with useful primitives and mitigations for developing safe applications, within the

                Wasmはなぜセキュアなのか?
              • プロと読み解く Ruby 3.1 NEWS - クックパッド開発者ブログ

                技術部の笹田(ko1)と遠藤(mame)です。クックパッドで Ruby (MRI: Matz Ruby Implementation、いわゆる ruby コマンド) の開発をしています。お金をもらって Ruby を開発しているのでプロの Ruby コミッタです。 本日 12/25 に、ついに Ruby 3.1.0 がリリースされました(Ruby 3.1.0 リリース )。今年も Ruby 3.1 の NEWS.md ファイルの解説をします。NEWS ファイルとは何か、は以前の記事を見てください。 プロと読み解く Ruby 2.6 NEWS ファイル - クックパッド開発者ブログ プロと読み解くRuby 2.7 NEWS - クックパッド開発者ブログ プロと読み解くRuby 3.0 NEWS - クックパッド開発者ブログ 本記事は新機能を解説することもさることながら、変更が入った背景や苦労な

                  プロと読み解く Ruby 3.1 NEWS - クックパッド開発者ブログ
                • Announcing TypeScript 5.0 - TypeScript

                  Today we’re excited to announce the release of TypeScript 5.0! This release brings many new features, while aiming to make TypeScript smaller, simpler, and faster. We’ve implemented the new decorators standard, added functionality to better support ESM projects in Node and bundlers, provided new ways for library authors to control generic inference, expanded our JSDoc functionality, simplified con

                    Announcing TypeScript 5.0 - TypeScript
                  • Announcing New Tools for Building with Generative AI on AWS | Amazon Web Services

                    Artificial Intelligence Announcing New Tools for Building with Generative AI on AWS The seeds of a machine learning (ML) paradigm shift have existed for decades, but with the ready availability of scalable compute capacity, a massive proliferation of data, and the rapid advancement of ML technologies, customers across industries are transforming their businesses. Just recently, generative AI appli

                      Announcing New Tools for Building with Generative AI on AWS | Amazon Web Services
                    • gpt-5 leaked system prompt

                      gistfile1.txt �t�˪� p�#̪� You are ChatGPT, a large language model based on the GPT-5 model and trained by OpenAI. Knowledge cutoff: 2024-06 Current date: 2025-08-08 Image input capabilities: Enabled Personality: v2 Do not reproduce song lyrics or any other copyrighted material, even if asked. You're an insightful, encouraging assistant who combines meticulous clarity with genuine enthusiasm and ge

                        gpt-5 leaked system prompt
                      • プロと読み解く Ruby 3.2 NEWS - クックパッド開発者ブログ

                        技術部の笹田(ko1)と遠藤(mame)です。クックパッドで Ruby (MRI: Matz Ruby Implementation、いわゆる ruby コマンド) の開発をしています。お金をもらって Ruby を開発しているのでプロの Ruby コミッタです。 昨日 12/25 に、恒例のクリスマスリリースとして、Ruby 3.2.0 がリリースされました(Ruby 3.2.0 リリース)。今年も Ruby 3.2 の NEWS.md ファイルの解説をします。NEWS ファイルとは何か、は以前の記事を見てください。 プロと読み解く Ruby 2.6 NEWS ファイル - クックパッド開発者ブログ プロと読み解くRuby 2.7 NEWS - クックパッド開発者ブログ プロと読み解くRuby 3.0 NEWS - クックパッド開発者ブログ プロと読み解く Ruby 3.1 NEWS -

                          プロと読み解く Ruby 3.2 NEWS - クックパッド開発者ブログ
                        • REST API Design Best Practices Handbook – How to Build a REST API with JavaScript, Node.js, and Express.js

                          By Jean-Marc Möckel I've created and consumed many API's over the past few years. During that time, I've come across good and bad practices and have experienced nasty situations when consuming and building API's. But there also have been great moments. There are helpful articles online which present many best practices, but many of them lack some practicality in my opinion. Knowing the theory with

                            REST API Design Best Practices Handbook – How to Build a REST API with JavaScript, Node.js, and Express.js
                          • Optimizing Javascript for fun and for profit

                            I often feel like javascript code in general runs much slower than it could, simply because it’s not optimized properly. Here is a summary of common optimization techniques I’ve found useful. Note that the tradeoff for performance is often readability, so the question of when to go for performance versus readability is a question left to the reader. I’ll also note that talking about optimization n

                            • HTTP/1.0 From Scratch

                              Introduction In our previous exploration, we delved into the simplicity of HTTP/0.9, a protocol that served as the web’s initial foundation. However, as the internet evolved, so did its needs. Enter HTTP/1.0, a landmark version released in 1996 that laid the groundwork for the web we know today. HTTP/1.0 was a game-changer, introducing features that revolutionized web communication: Headers: Metad

                                HTTP/1.0 From Scratch
                              • Tauri 2.0 Stable Release

                                We are very proud to finally announce the stable release for the new major version of Tauri. Welcome to Tauri 2.0! What is Tauri? In a Tauri application the frontend is written in your favorite web frontend stack. This runs inside the operating system WebView and communicates with the application core written mostly in Rust. When Should I Use Tauri? If you check any of the boxes below, you should

                                  Tauri 2.0 Stable Release
                                • Vite 8.0 is out!

                                  Vite 8.0 is out! ​ March 12, 2026 We're thrilled to announce the stable release of Vite 8! When Vite first launched, we made a pragmatic bet on two bundlers: esbuild for speed during development, and Rollup for optimized production builds. That bet served us well for years. We're very grateful to the Rollup and esbuild maintainers. Vite wouldn't have succeeded without them. Today, it resolves into

                                    Vite 8.0 is out!
                                  • Announcing TypeScript 6.0 - TypeScript

                                    Today we are excited to announce the availability of TypeScript 6.0! If you are not familiar with TypeScript, it’s a language that builds on JavaScript by adding syntax for types, which enables type-checking to catch errors, and provide rich editor tooling. You can learn more about TypeScript and how to get started on the TypeScript website. But if you’re already familiar with the language, you ca

                                      Announcing TypeScript 6.0 - TypeScript
                                    • WebKit Features in Safari 16.4

                                      Mar 27, 2023 by Patrick Angle, Marcos Caceres, Razvan Caliman, Jon Davis, Brady Eidson, Timothy Hatcher, Ryosuke Niwa, and Jen Simmons ContentsWeb Push on iOS and iPadOSImprovements for Web AppsWeb ComponentsCSSHTMLJavaScript and WebAssemblyWeb APIImages, Video, and AudioWKWebViewDeveloper ToolingWeb InspectorSafari Web ExtensionsSafari Content BlockersNew Restrictions in Lockdown ModeMore Improve

                                        WebKit Features in Safari 16.4
                                      • GitHub - modelcontextprotocol/servers: Model Context Protocol Servers

                                        Official integrations are maintained by companies building production ready MCP servers for their platforms. 21st.dev Magic - Create crafted UI components inspired by the best 21st.dev design engineers. 2slides - An MCP server that provides tools to convert content into slides/PPT/presentation or generate slides/PPT/presentation with user intention. ActionKit by Paragon - Connect to 130+ SaaS inte

                                          GitHub - modelcontextprotocol/servers: Model Context Protocol Servers
                                        • JavaScript Best Practices | The WebStorm Blog

                                          IDEs CLion DataGrip DataSpell Fleet GoLand IntelliJ IDEA PhpStorm PyCharm RustRover Rider RubyMine WebStorm Plugins & Services Big Data Tools Code With Me JetBrains Platform Scala Toolbox App Writerside JetBrains AI Grazie Junie JetBrains for Data Kineto Team Tools Datalore Space TeamCity Upsource YouTrack Hub Qodana CodeCanvas Matter .NET & Visual Studio .NET Tools ReSharper C++ Languages & Frame

                                            JavaScript Best Practices | The WebStorm Blog
                                          • Introducing Ezno

                                            Ezno is an experimental compiler I have been working on and off for a while. In short, it is a JavaScript compiler featuring checking, correctness and performance for building full-stack (rendering on the client and server) websites. This post is just an overview of some of the features I have been working on which I think are quite cool as well an overview on the project philosophy ;) It is still

                                              Introducing Ezno
                                            • Wasm 3.0 Completed - WebAssembly

                                              Wasm 3.0 Completed Published on September 17, 2025 by Andreas Rossberg. Three years ago, version 2.0 of the Wasm standard was (essentially) finished, which brought a number of new features, such as vector instructions, bulk memory operations, multiple return values, and simple reference types. In the meantime, the Wasm W3C Community Group and Working Group have not been lazy. Today, we are happy t

                                                Wasm 3.0 Completed - WebAssembly
                                              • How modern browsers work

                                                Note: For those eager to dive deep into how browsers work, an excellent resource is Browser Engineering by Pavel Panchekha and Chris Harrelson (available at browser.engineering). Please do check it out. This article is an overview of how browsers work. Web developers often treat the browser as a black box that magically transforms HTML, CSS, and JavaScript into interactive web applications. In tru

                                                  How modern browsers work
                                                • Why We're Breaking Up with CSS-in-JS

                                                  Hi, I'm Sam — software engineer at Spot and the 2nd most active maintainer of Emotion, a widely-popular CSS-in-JS library for React. This post will delve into what originally attracted me to CSS-in-JS, and why I (along with the rest of the Spot team) have decided to shift away from it. We'll start with an overview of CSS-in-JS and give an overview of its pros & cons. Then, we'll do a deep dive int

                                                    Why We're Breaking Up with CSS-in-JS
                                                  • Extreme Explorations of TypeScript's Type System | Learning TypeScript

                                                    TypeScript's type system is Turing Complete: meaning it has conditional branching (conditional types) and works with an arbitrary huge amount of memory. As a result, you can use the type system as its own programming language complete with variables, functions, and recursion. Developers have pushed the bounds of type operations possible in the type system to write some pretty incredible things! Th

                                                      Extreme Explorations of TypeScript's Type System | Learning TypeScript
                                                    • Prettier 3.0: Hello, ECMAScript Modules! · Prettier

                                                      We are excited to announce the release of the new version of Prettier! We have made the migration to using ECMAScript Modules for all our source code. This change has significantly improved the development experience for the Prettier team. Please rest assured that when using Prettier as a library, you can still use it as CommonJS as well. This update comes with several breaking changes. One notabl

                                                        Prettier 3.0: Hello, ECMAScript Modules! · Prettier
                                                      • Announcing .NET 10 - .NET Blog

                                                        Today, we are excited to announce the launch of .NET 10, the most productive, modern, secure, intelligent, and performant release of .NET yet. It’s the result of another year of effort from thousands of developers around the world. This release includes thousands of performance, security, and functional improvements across the entire .NET stack-from languages and developer tools to workloads-enabl

                                                          Announcing .NET 10 - .NET Blog
                                                        • Stop saying Rust is Complicated

                                                          Stop Saying Rust Is Complicated Rust often gets labeled as “too hard” or “too complicated” because it forces you to think carefully about memory, concurrency, and error handling. But here’s the catch: those aren’t just “Rust problems.” They’re software engineering problems that show up in any sufficiently complex system. Rust’s approach may feel strict, but it’s essentially teaching you fundamenta

                                                          • CVE-2024-4367 - Arbitrary JavaScript execution in PDF.js - Codean Labs

                                                            This post details CVE-2024-4367, a vulnerability in PDF.js found by Codean Labs. PDF.js is a JavaScript-based PDF viewer maintained by Mozilla. This bug allows an attacker to execute arbitrary JavaScript code as soon as a malicious PDF file is opened. This affects all Firefox users (<126) because PDF.js is used by Firefox to show PDF files, but also seriously impacts many web- and Electron-based a

                                                              CVE-2024-4367 - Arbitrary JavaScript execution in PDF.js - Codean Labs
                                                            • Announcing TypeScript 4.7 - TypeScript

                                                              Today we’re excited to announce the availability of TypeScript 4.7! If you’re not yet familiar with TypeScript, it’s a language that builds on JavaScript and adds syntax for types. Types help describe what kinds of values you’re working with and what kinds of functions you’re calling. TypeScript can use this information to help you avoid about mistakes like typos, missing arguments, or forgetting

                                                                Announcing TypeScript 4.7 - TypeScript
                                                              • Announcing TypeScript 5.9 - TypeScript

                                                                Today we are excited to announce the release of TypeScript 5.9! If you’re not familiar with TypeScript, it’s a language that builds on JavaScript by adding syntax for types. With types, TypeScript makes it possible to check your code to avoid bugs ahead of time. The TypeScript type-checker does all this, and is also the foundation of great tooling in your editor and elsewhere, making coding even e

                                                                  Announcing TypeScript 5.9 - TypeScript
                                                                • ライブラリ作者におすすめしたいBabelの新機能 babel-plugin-polyfill-corejs3 | Wantedly Engineer Blog

                                                                  Babelの新しいpolyfill用プラグインであるbabel-polyfillsが2022年4月に脱experimentalを果たしていました。そこで本稿では、Babelにおいてpolyfillがどのように扱われていたかを振り返りながら新しいpolyfill pluginを紹介します。 注意: Babel 7.4で非推奨化された@babel/polyfillとは別物です。 何が問題だったのか?babel-polyfillsのREADMEと元issueにも説明がありますが、本記事ではあらためて日本語で説明したいと思います。端的に言うと今までは以下の要件を両立できませんでした。 ソースコード中で使われている機能のpolyfillだけを注入する。ターゲットブラウザを指定して、必要なpolyfillだけを注入する。副作用のない形でpolyfillを注入する。babel-polyfillsはこれら

                                                                    ライブラリ作者におすすめしたいBabelの新機能 babel-plugin-polyfill-corejs3 | Wantedly Engineer Blog
                                                                  • AWS公式SDKにも存在した、署名付きURLにおけるパストラバーサル - GMO Flatt Security Blog

                                                                    はじめに こんにちは。GMO Flatt Securityのセキュリティエンジニアの松井(@ryotaromosao)とチョン(Eui Chul Chung)です。 皆さんは、「署名付きURLにおけるパストラバーサル」の脆弱性をご存知でしょうか? Webアプリケーションで署名付きURLを実装する際、AWS公式のSDKを用いることが多いかと思います。過去にはその公式SDK自体にパストラバーサルの脆弱性が見つかった事例がありました。また一方で、公式SDK側では正しい対策がされているものの、アプリケーション開発者の実装ミスによってパストラバーサルが引き起こされてしまうケースも存在します。 本記事では、実際にAWS SDKで見つかった脆弱性の事例を交えながら、コードベースで署名付きURLにおけるパストラバーサルの脆弱性を深掘りしていきたいと思います。また、後半では、SDKを利用するアプリケーション

                                                                      AWS公式SDKにも存在した、署名付きURLにおけるパストラバーサル - GMO Flatt Security Blog
                                                                    • Welcome to Wildebeest: the Fediverse on Cloudflare

                                                                      The Fediverse has been a hot topic of discussion lately, with thousands, if not millions, of new users creating accounts on platforms like Mastodon to either move entirely to "the other side" or experiment and learn about this new social network. Today we're introducing Wildebeest, an open-source, easy-to-deploy ActivityPub and Mastodon-compatible server built entirely on top of Cloudflare's Super

                                                                        Welcome to Wildebeest: the Fediverse on Cloudflare
                                                                      • Okay, I really like WezTerm

                                                                        A while back my friend recommended that I try WezTerm. I’d been an iTerm 2 stalwart for the better part of a decade, but not to be too narrow-minded I conceded, started it up, and saw this: Does the job, sure, but doesn’t feel quite right. Okay then, experiment over. Back to iTerm… Fast forward a couple of months and I got the itch to try a new terminal again. I wanted to use one whose config was

                                                                          Okay, I really like WezTerm
                                                                        • Why are 2025/05/28 and 2025-05-28 different days in JavaScript?

                                                                          Why are 2025/05/28 and 2025-05-28 different days in JavaScript? 2025-05-28 While setting up this site itself, I ran into the following oddity: console.log(new Date('2025/05/28').toDateString()); // Wed May 28 2025 console.log(new Date('2025-05-28').toDateString()); // Tue May 27 2025 // Bonus: (omit leading 0) console.log(new Date('2025-5-28').toDateString()); // Wed May 28 2025 You may get differ

                                                                          • JS Self-Profiling API In Practice

                                                                            Nic Jansma (@nicj) is a software developer at Akamai building high-performance websites, apps and open-source tools. Table of Contents The JS Self-Profiling API What is Sampled Profiling? Downsides to Sampled Profiling API Document Policy API Shape Sample Interval Buffer Who to Profile When to Profile Specific Operations User Interactions Page Load Overhead Anatomy of a Profile Beaconing Size Comp

                                                                              JS Self-Profiling API In Practice
                                                                            • What's the best way to do authentication in modern applications

                                                                              Ask ten frontend developers where to store a login token, and you'll get four answers and an argument. And because each approach addresses different concerns, the debates continue without resolution. So let's clarify once and for all: What are the options to store a token, which are the most secure and what are the use cases. I go much deeper on XSS and CSRF in my FREE frontend security course, bu

                                                                                What's the best way to do authentication in modern applications
                                                                              • TypeScript Compiler APIを活用してi18nの不整合をチェックする - Commune Engineer Blog

                                                                                こんにちは。業務委託としてコミューンのグローバルチームでエンジニアをしているhiro08と申します。 グローバルチームでは主に海外展開に向けた開発や施策を行なっています。もし、グローバルチームに興味のある方は日本のSaaSスタートアップが世界で戦うためのプロダクトを開発するということも一読ください。 今回はグローバルチームでの開発の一部として、TypeScript Compiler APIを活用したi18nの不整合をチェックするツールを作成したお話をしようと思います。 背景 海外展開に向けた開発でまず思いつくのがi18n (多言語化) 対応ではないでしょうか。コミューンのプロダクトではi18nの対応が完了しており、すでに運用フェーズに入っています。 しかし、運用していく中で対訳データのキーやネームスペースの不整合に気づく仕組みがないことが課題点として挙がってきました。 i18nでは、ネーム

                                                                                  TypeScript Compiler APIを活用してi18nの不整合をチェックする - Commune Engineer Blog
                                                                                • 【TypeScript】カスタムエラーのすすめ

                                                                                  TypeScriptで開発をしていると、APIエラーやバリデーションエラーなど、さまざまなエラーを扱う場面があります。 そんなときに、標準のErrorクラスだけで対応していませんか。 この記事では、カスタムエラーを導入するメリットと、ボイラープレートを減らしてカスタムエラーを楽に定義出来るライブラリを紹介します。 カスタムエラーを作る理由 標準のErrorクラスを使用することで楽にエラーを作成できますが、次のような問題があります。 エラーの種類を区別しづらい 追加の情報(HTTPステータスやエラーコードなど)を持たせづらい メッセージが一貫しない たとえば次のような例を考えてみましょう。 try { throw new Error('User not found'); } catch (error) { if (error.message.includes('not found')) {

                                                                                    【TypeScript】カスタムエラーのすすめ