このサイト(機械学習を使って東京23区のお買い得賃貸物件を探してみた 〜スクレイピング編〜)を参考に、pythonのスクレイピングを練習している初学者です。
このサイトでは、SUUMOの東京都足立区の賃貸情報をまとめてスクレイピングし、データ分析して、どの物件が一番お得かを明らかにするプログラムが紹介されています。
このサイトを参考に、requests, BeautifulSoupを用いて写経をしているのですが、上手くいきません。
実行環境:python 3.6.7, beautifulsoup4:4.6.3, requests:2.20.0
次のサイト⇒【SUUMO】東京都足立区の賃貸(賃貸マンション・アパート)住宅のお部屋探し物件情報 の、titleをrequests, BeautifulSoupを使って取得しようとするも、想定されたものとは違うものが返ってきます(ケース1)。
また、URLパラメータを別途指定するとうまくいくという記事を見たような気がしたので試してみましたが、同じ結果になりました(ケース2)。
コードを見てください。
python
1from bs4 import BeautifulSoup 2import requests 3 4# ケース1 URLパラメータも含める 5url1 = 'http://suumo.jp/jj/chintai/ichiran/FR301FC001/?ar=030&bs=040&ta=13&sc=13121&cb=0.0&ct=9999999&et=9999999&cn=9999999&mb=0&mt=9999999&shkr1=03&shkr2=03&shkr3=03&shkr4=03&fw2=&srch_navi=1' 6 7# ケース2 URLパラメータを別途指定する 8url2 = 'http://suumo.jp/jj/chintai/ichiran/FR301FC001/' 9params = {"ar":"030", "bs":"040", "ta":"13", "sc":"13121", "cb":"0.0", "ct":"9999999", "et":"9999999", "cn":"9999999", "mb":"0", "mt":"9999999", "shkr1":"03", "shkr2":"03", "shkr3":"03", "shkr4":"03", "fw2":"", "srch_navi":"1"} 10 11# 両方のurlに対し、requests,BeautifulSoupの処理を行う。 12result1 = requests.get(url1) 13result2 = requests.get(url2, params=params) 14soup1 = BeautifulSoup(result1.content, "html.parser") 15soup2 = BeautifulSoup(result2.content, "html.parser") 16 17# 出力する。本来、"【SUUMO】東京都足立区の賃貸(賃貸マンション・アパート)住宅のお部屋探し物件情報"と出て欲しい。 18print(soup1.title.string) 19# => "【SUUMO】 ページを表示できません。" 20print(soup2.title.string) 21# => "【SUUMO】 ページを表示できません。" 22
以上のような症状です。なぜ、「ページを表示できません」となってしまうのか、見当もつきません。
また、そのためか、サイトで紹介されていたコードをコピペしてもエラーが出てしまいます。
宜しくお願い致します。
回答1件
あなたの回答
tips
プレビュー