GASでのWEBスクレイピングの業務効率化方法とエラーの解決方法

このQ&Aのポイント
  • 業務効率化のため、GASでのWEBスクレイピングを試してみましたが、POSTのUrlFetchApp.fetchでエラーが発生しました。
  • 参考記事ではログイン後にサイトのソースを取得する方法が紹介されていますが、自身の試行ではログインができていない可能性があります。
  • エラーの切り分け方法や解決策について詳しい方の助力を求めています。
回答を見る
  • ベストアンサー

GASでのWEBスクレイピング

業務効率化のため、以下の記事を参考に GASでのWEBスクレイピングを試してみましたが POSTのUrlFetchApp.fetchでエラーとなってしまいます。 ◯参考記事 http://katsulog.tech/get-the-source-after-logging-in-to-the-site-when-scraping-with-googlespreadsheet/ ◯エラー内容 https://www.fc-hikaku.net/client/sessions のリクエストに失敗しました(エラー: 422) ◯実施したいサイト(ログインページ) https://www.fc-hikaku.net/client そもそもログインができていないと思われるのですが GASにおいてエラーの切り分けなどの仕方もわからず 詳しい方にご助力いただきたいです。 参考記事内のサンプルは正常に動作しております。 宜しくお願いします。

  • Java
  • 回答数1
  • ありがとう数1

質問者が選んだベストアンサー

  • ベストアンサー
  • silencezt
  • ベストアンサー率100% (1/1)
回答No.1

スクレイピングツールを使ってみたら? デキる人は知っている!Webスクレイピング用のソフト30選http://jp.octoparse.com/blog/top-30-free-web-scraping-software/

関連するQ&A

  • GASスクレイピング ログイン毎回必要か

    GASでスクレイピングを行いたいと思います。 pythonででスクレイピングを行う場合、ログインが必要なサイトの場合には、(すでにブラウザでログインしていてもそのログインは有効とならず)seleniumを用いて、毎回ログインする必要があると思います。 GASでparserなどを活用してスクレイピングを行う場合、ログインが必要なサイトの場合には、やはりログインの部分を作成する必要があるのでしょうか(ネットで見るとちょっと私には高度なので)。 ログインしている状態で、そのまま見に行ってくれるわけにはいかないものなのでしょうか。 (実際にやってみろと言われそうですが)

  • スクレイピングについて【初心者】

    私はネットショッピングが大好きで、普段からAmazon、楽天、Yahooショッピングなどで買い物しております。 ネットショッピングで買い物するようになって気づいたのですが、サイトが違うと、同じ商品にも関わらず値段が全然違うのですね。(もちろんですが...) 同じ商品の価格を比較してくれる「価格.com」のようなサイトもあるのですが、私が普段買い物するような商品は価格.comに載ってないような商品やサイトもあるため、自分でネットサーフィンしながら、安いサイトで買っています。 その際に、商品が同じであるかどうかは写真だけでは判りません。そこで使っているのが、「JANコード」です。 これは商品ごとに割り当てられた13ケタの数字なので、商品名や写真で同じ商品か分かりにくい場合にも判別することができました。 最近スクレイピングというテクニックの存在を知りました。 もちろん相手のサイトに迷惑がかからないように気を付けないことは承知しております。 岡崎図書館事件の様なことにならないために、スクレイピングするのは一回限りです。 私がやりたいことですが、Lohacoのサイトで商品の一覧から、 (1)商品名(2)値段(3)JANコード(4)URL 以上の4つを抜き出して、エクセルにまとめることは可能でしょうか? また可能の場合は、どのようなプログラミングで出来ますでしょうか。 LOHACOホーム>コスメ・スキンケア・美容>スキンケア・基礎化粧品>化粧水>エイジング化粧水 http://lohaco.jp/g4/55-5501-5501004-55010040002/?resultCount=100&va... 例えば以上のページです。このページにはスキンケア用品が74商品登録してあります。(現時点) 最終的にはExcelのA列に商品名、B列に値段、C列にJANコード、D列にURLを抜き出したいです。 私はこれまでプログラミングを勉強したことがなかったため、かなりハードルが高かったです。 いちを「データを集める技術(佐々木拓郎 著)」と「ExcelVBAでIEを思いのままに操作できるプログラミング術」という本を購入して勉強してみました。 しかしプログラミングの知識が全くないまま進んで行ったために、一か月くらい勉強しましたが、途中で挫折してしまいました。 また、VBAの基本から勉強しないと思い「Excel VBA 本格入門」という本を勉強しましたが、こちらは一通り理解することができました。 既存のスクレイピングツールを色々試したのですが、「Octoparse」というツールがなかなか使いやすかったです。 しかしホームページごとに構成が違ったためか、なかなか思い通りにツールが動かず、上のサイトのJANコードを抜き出すことができませんでした。 回答を頂ければ幸いです。よろしくお願いいたします。 補足もしプログラミングにお詳しい方がいらっしゃいましたら、一つの例として参考にさせて頂きたいので、上記の質問が解決できるプログラミングをご教授頂けると嬉しく思います。 ※言語は問いませんので、幅広い回答をお待ちしております。

  • python スクレイピングでのログインができない

    スクレイピングをするために 下記のようなログインサイトにpythonでログインしたいです。 仮定url ="https://aaaaaaa/signin" <form> <p class="signin-label">ログイン画面</p> <ul class="signin-list"> <li class="signin-item"> <div class="hoge1"> <label class="hoge2">メールアドレス</label><div class="hoge3"> <input id="email" autocomplete="email" class="hoge4" type="email" required=""></div> </div> </li> <li class="signin-item"> <div class="hoge5"> <label class="hoge6">パスワード</label> <div class="hoge7"> <input id="password" autocomplete="new-password" class="hoge8" type="password" required=""></div> </div><p class="txt-right"> <a class="signin-link" href="/d/forgot_password">パスワードをお忘れの方</a></p></li></ul><div class="txt-center"> <button type="submit" class="hoge9">ログイン</button> </div> </form> ★行っているコード import requests from bs4 import BeautifulSoup from urllib.parse import urljoin # メールアドレスとパスワードの指定 MAIL = "aaa@mail.net" PASS = "555" # セッションを開始 session = requests.session() # ログイン login_info = { "email":MAIL, "password":PASS, } # action url_login = "https://aaaaaaa/signin" res = session.post(url_login, data=login_info) res.raise_for_status() # エラーならここで例外を発生させる res.text ※エラー内容 HTTPError: 404 Client Error: Not Found for url:https://aaaaaaa/signin 上記となります。 お知恵拝借いただけないでしょうか。

  • デベロッパーツールでHTML構成が確認できません

    スクレイピングするため、このサイトのHTML構成を確認しようと思ったのですが、添付画像のようにエラーが発生します。 https://data.wingarc.com/scraping-27053 このサイトを見ながら記事のタイトルの情報をスクレイピングしようと思ったのですが、セレクトボタンを押し、スクレイピングしたい範囲を選択しても、手に入れたいデータを指定するタグが見つかりません。マウスカーソルの左上部分に四角い枠が表示されるのですが、この中に目的の情報があるのでしょうか?

  • IIS6.0のWebサイトについて

    困っているのでお願いします。 現在IIS6.0にWebサイトがポート80と8080の2サイト作っています。 80はMOSSサイトで、8080はASP.netのWebサイトです。 別のアプリケーションプールで動いています。 あるクライアントマシンからドメイン参加しログインしたのですが、サーバー名でpingも通るのですが、80の方はサーバー名で名前解決するのですが、8080の方はページが開きません。 (ipアドレスですと開きます) 考えられる原因等ございますでしょうか?よろしくお願いします。

  • RSSで特定のカテゴリを取得する方法

    今までブログを書いていて、今はHPを作っています。 ブログには様々なジャンルの記事を書いていますが、 HPは特定のジャンルに対して作る予定です。 そこで今までブログに書いた記事をHPにRSSでフィードして載せようと考えていますが、 MagpieRSSを使って最新記事を無事に取得はできましたが、 特定のカテゴリの記事のみの取得はできないでしょうか? ネット上のプログラムを参考にして、 --------------------------- require_once 'rss_fetch.inc'; $url = '取得したいサイトのURL'; $rss = fetch_rss($url); $title = $rss->channel['title']; --------------------------- どこにもカテゴリ取得のコマンドがないのですが、そもそもできないものでしょうか? MagpieRSSじゃなくても、できる方法があれば紹介していただければと思います。 よろしくおねがいします。

    • 締切済み
    • PHP
  • GASについて

    こんばんは今現在GASを使ってお客様へのメールを月報やメルマガ的に自動で送れないかを調べており、以下のサイトを参考に進めたのですがエラーがでてしまい編集ができません。サイト主はGsuiteらしいのですが僕のは通常のGmailになっています。 もし僕の作ったコードに誤りがありましたらご教授いただける方いらっしゃったら幸いです。 よろしくお願いいたします 参考URL https://katoh-tax.com/2019/08/22/gas-gmail-automatic/ function automail() { var subject = '●●●●広告のご案内'; var body = ''; body += '●●●様\n'; body += '\n'; body += '日頃大変お世話になっております'; body += '表題の件についてご案内をいたします'; body += '\n'; body += '広告出稿確認日'; body += '●月●●日'; body += '\n'; body += '広告受付締め切り日'; body += '●月●●日'; body += '\n'; body += 'よろしくご検討のほどお願いいたします'; body += '\n'; body += 'ありがとうございます'; body += '\n'; body += '●●●●(名前)'; body += '●●●(名前英字)'; body += '●●電話番号'; body += '●●電話番号'; body += '●●E-mail'; GmailApp.sendEmail( '●●', Subject, body,

  • オリコンブログからfc2ブログへのインポート方法

    下記の通り、ブログの記事を移転したいと思っています。 オリコンブログで書いた記事がかなり多いのですが、最近サーバーが非常に重くfc2ブログへ移転しました。(登録はしてあります) あえてインポートが出来るfc2ブログへ登録したのですが使用方法が良く分からず困っています。 この方面に長けてらっしゃる方、またこのサイトが参考になるなどありましたら教えてください。

  • Webデザイナー 独学 作品作りについて

    Webデザイナー 独学 作品作りについて 架空のクライアントを設定して、架空のWebサイトを作るやり方で、作品作りに取り掛かっている最中なのですが、このクライアント設定をどのように決めていけばいいのか、正しいやり方がわかりません。 転職用のポートフォリオを作る際は、応募する企業の仕事内容に記載されているデザインと同じ作品を作る(ブランドサイト、キャンペーンサイト、商品サイトデザインに力を入れているのであれば、このうちのどれかを作品として作る) このような方針で作品づくりを進めています。 現在応募を検討している企業が、ブランドサイトをメインに制作している会社のため、実際にブランドサイトを作成しようと、下記の架空のクライアントを設定してみたのですが クライアント:某食品メーカー 要望:取り扱っている商品の認知度を向上させ、ユーザーからの購入数を増やしたい ターゲット層:本格的な中華料理を味わいたい、楽しみたい人 ブランドイメージ:高級な味、高級感 上記の内容を ネットを調べて自分なりに考えてみたのですが、それらはブランドサイトではなく販売サイトと指摘を受け、自分の中ではネット上で実際にブランドサイトと呼ばれているものを見て、どのようなお客さんや、何を伝えようとしているのかを自分なりに考えて、ブランドサイトの作り方等の記事を見様見真似で実際に決めてみたので、作品作りにおけるクライアントの設定方法、正しい情報ややり方が余計にわからなくなりました。 Webデザイナーの方々は、最初からクライアントの方から依頼を受けるようですので、設定は必要ありませんが、自分でクライアントを決めるというところでなかなか前に進むことができません。 何か良い例はございませんでしょうか? 何かおすすめのサイトや書籍等ございましたらご教授頂き所存です。

  • ・WEBメールにお詳しい方

    ・WEBメールにお詳しい方 ・システムに詳しい方 ・中国のネット事情に詳しい方 お知恵を拝借させてくださいm(_ _)m 中国に来ています。 ホテルでWebメールを見ようとしたら 見れませんと エラーコメントが出ました。 使用しているWebメールはLIVEDOORメールです。 ID&PASSを入力してログイン画面のURLは https://member.livedoor.com/login/?.next=http://member.livedoor.com/gmail/go です。 以前、中国のネット事情に詳しい方が 『上記URLが長すぎるので中国ではエラーになることがある。URLを短くするとアクセス出来る』 的な意味の記事を書かれていたのを見たことがありますが、 今はその記事が見つかりません。 上記URLを短くして再アクセスをしたいのですが どの部分を短くしたURLにすれば良いのかわかりません。 どんなアドバイでも結構です。 中国滞在が少し長いので、Webメールを見る事は重要な為是非お知恵を拝借させてください。 宜しくお願い致します。