class Techとは

WordPressにJP Markdownを導入して文章作成を楽にしよう!

PHP WordPress

WordPressで記事を書いていくときにビジュアルでやると思ったとおりのHTMLタグにならなくてテキストで編集していくこともあるかと思います。そのときにわざわざHTMLを打っていくのも大変です。たくさん更新しようと思ったらその時間だけでもかなりの量になります。そんなときにWordPressでMarkdownを使えるようになるプラグイン「JP Markdown」を導入してライティング速度を上げていきましょう!
JP Markdown
Continue reading “WordPressにJP Markdownを導入して文章作成を楽にしよう!”

RubyとNokogiriを使ってHTML解析・スクレイピングをしよう

Ruby

この記事ではRubyのgemであるNokogiriを使ってHTML解析やスクレイピングをしてみようと思います。

Nokogiriのインストール

まずはNokogiriをインストールします。

$ gem install nokogiri

これでインストール完了です。
それでは実際に使っていきましょう。

簡単なHTMLでNokogiriを試してみる

まずは簡単なHTMLでどのようにNokogiriを使うのか試してみましょう。

require 'nokogiri'

# HTMLを解析する場合
html = Nokogiri::HTML("<html><body><h1>Hello Nokogiri</h1><p><a href='https://example.com'>How to parse HTML</a></p></body></html>")

html.at_css("h1").text # => "Hello Nokogiri"
html.css("p").first.text # => "How to parse HTML"
html.css("p a").attribute('href').value # => "https://example.com"

上記のコードのように、at_cssを使うとHTML文章の中から1番最初に出てくる要素をCSSの形式で検索することが出来ます。
また、cssを使うとHTML文章内から複数要素を取得することが出来ます。
属性を取得するためにはattributeを使います。属性の中身を取得したいときはvalueを使うと取得出来ます。

HTML文章の検索の方法は、xpath形式css形式があるのですが、ウェブ制作者などであればいつも使い慣れているcss形式がよいでしょう。

実際にGoogleのサイトからロゴのパスを取得してみましょう。

実際に解析してみる

それでは実際に解析してみましょう。
ウェブサイトの解析をする場合はhttpなどからデータを取得する必要があるので、open-uriを使用しています。

require 'open-uri'
require 'nokogiri'

url = 'https://www.google.com/'
charset = nil
html = open(url) do |h|
  charset = h.charset
  h.read
end
doc = Nokogiri::HTML.parse(html, nil, charset)

puts doc.at_css("#hplogo").attribute('src').value
# => /logos/doodles/2018/world-cup-2018-day-11-5692104616443904-5688737870643200-ssw.png

参考リンク

RubyでHTTPメソッド(GETやPOSTなど)を送る方法

Ruby

Rubyでプログラムを書くときにGETやPOSTなどのHTTPメソッドを送りたいときがあるかと思います。そのようなときに便利なのが標準ライブラリのnet/httpです。今回はこのライブラリを使ってGET, POST, PATCH, PUT, DELETEメソッドを送るにはどうしたらよいのかを記述します。
Continue reading “RubyでHTTPメソッド(GETやPOSTなど)を送る方法”

Rubyでファイルの先頭や後ろに追記する方法

Ruby

Rubyでプログラムを書くとき、しっかり運営していくものであればデータベースを使ったほうがいいですが、簡易的なシステムを組んだり一度組んだら捨ててしまうような場合のときにデータベースを使うのは少し面倒なときがあります。そんなときにファイルを簡易的なデータベースとして使うこともありますが、今回はそのようなときに使えるファイルの先頭や後ろに追記する方法を学びます。
Continue reading “Rubyでファイルの先頭や後ろに追記する方法”

Rubyでインターネット上の画像をローカルに保存するためには

Ruby

RubyはRuby on Railsなどを用いてWebアプリケーションを作るのにも優れていますが、簡単なタスクをさくっとプログラムするのにも向いています。今回はRubyを用いてローカルに画像を保存するためにはどうしたらよいか学んでいきましょう。
Continue reading “Rubyでインターネット上の画像をローカルに保存するためには”

WordPressで自動で目次を作るプラグイン「Table of Contents Plus」を使おう

PHP WordPress

WordPressで記事を書いていると見出しごとに目次を作りたいと思うこともあると思います。しかし手動ですべて設定していくのはとても大変ですし、記事を変更した場合などにとても弱いです。
そんなときは自動化で済ませてしまいましょう!
WordPressプラグイン、「Table of Contents Plus」を導入してサクッと目次を作っていきます。

Table of Contents Plus
Continue reading “WordPressで自動で目次を作るプラグイン「Table of Contents Plus」を使おう”