プログラミング×マーケティングの威力!PythonでSEO分析ツールを自作

プログラミングとマーケティングの掛け合わせ

Trueone-jukuで学んでいると、いつも講師の方々が口を酸っぱくして言うのが「プログラミングとマーケティング、この2つを掛け合わせることが大事」ってことなんですよね。最初は「ふーん、そうなんだ」くらいに思ってたんですけど、最近その意味が身に染みてわかる出来事がありました。

それは、Pythonを使って簡単なSEO分析ツールを自作してみたこと。これが想像以上に面白くて、まさに「掛け合わせ」の威力を体感できたので、今日はその話をシェアさせてください。

シンプルなSEO分析ツールを作ってみた

僕が作ったのは、超シンプルなツールです。特定のキーワードで検索したときの上位10サイトの「タイトル」と「URL」をリストアップしてくれる、っていうもの。PythonのrequestsBeautifulSoup4っていうライブラリを使えば、意外と簡単にできちゃうんですよ。

# 必要なライブラリをインストール
# pip install requests beautifulsoup4

import requests
from bs4 import BeautifulSoup
import urllib.parse

# 検索したいキーワード
keyword = "プログラミングスクール おすすめ"
# URLエンコード
encoded_keyword = urllib.parse.quote(keyword)

# Google検索のURL
url = f"https://www.google.co.jp/search?hl=ja#=10&q={encoded_keyword}"

# ユーザーエージェントを設定(重要!)
headers = {
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36"
}

# 実際にリクエストを送る
response = requests.get(url, headers=headers)
response.raise_for_status()

# HTMLを解析
soup = BeautifulSoup(response.text, 'html.parser')

# 検索結果のタイトルとURLを抽出
for g in soup.find_all('div', class_='g'):
    title_tag = g.find('h3')
    link_tag = g.find('a')

    if title_tag and link_tag and 'href' in link_tag.attrs:
        title = title_tag.get_text()
        link = link_tag['href']

        if link.startswith('http'):
            print(f"■ {title}")
            print(f"   {link}\n")

やってることは、プログラムが僕の代わりにGoogle検索して、その結果画面からタイトルとリンクを抜き出してきてるだけ。たったこれだけでも、立派な業務効率化ツールですよね。

発展させる可能性は無限大

このツール、実はまだまだ発展させられるなって思ってます。例えば、今回はタイトルとURLだけでしたけど、各サイトのdescriptionも一緒に抜き出したり、本文の中から特定のキーワードが何回使われているかをカウントする機能を追加したり。

もっと言えば、このプログラムを毎日決まった時間に自動で動かして、順位の変動をGoogleスプレッドシートに記録していく…なんてことも可能です。ここまでくると、もう市販のSEOツールの一部の機能を自分で作ってる感じですよね。

マーケティング担当者が「こんなデータが欲しいな」と思った時に、エンジニアに頼むんじゃなくて、自分でサクッと作れたら、仕事のスピードが爆発的に上がると思いませんか?

新しい時代を生き抜く力

Trueone-jukuが目指している「新しい時代を生き抜く力」って、こういうことの積み重ねなんだろうなと、今回のツール作りを通して改めて思いました。ただ知識を学ぶだけじゃなくて、それをどう組み合わせて、自分の武器にしていくか。そのヒントが、ここにはたくさん転がってる気がします。

プログラミングとマーケティング、一見すると全然違う分野に見えるけど、実はめちゃくちゃ相性がいい。もし今、どっちかのスキルを学んでいる人がいたら、ぜひもう片方の世界も覗いてみてほしいです。きっと、新しい視点やアイデアが生まれるはず。僕もまだまだ勉強中の身ですけど、これからも学んだことをどんどん掛け合わせて、面白いものを作っていきたいですね!