質問: 'python' # フォームのqという名前のフィールドに検索語を入力 # inputタグがname="q"となっている browser.submit_form(form,list(form.submit_fields.values())[0]) # 一つ目のボタンを押す for a in browser.select('h3 > a'): print(a.text) print(a.get('href')) ``` 実行結果の上位三件だけ書きます。 ``` Welcome to Python.org /url?q=https://www.python.org/&sa=U&ved=0ahUKEwiFn5akusDbAhWGG5QKHTbRB0MQFggUMAA&usg=AOvVaw06k4cK-kTRbLmERjq5ExMU 専門知識いらず!Pythonとは?言語の特徴から網羅的に徹底解説 | 侍 ... /url?q=https://www.sejuku.net/blog/7720&sa=U&ved=0ahUKEwiFn5akusDbAhWGG5QKHTbRB0MQFggfMAE&usg=AOvVaw1quffJiatq_wDyYTRtapMW Python - ウィキペディア /url?q=https://ja.wikipedia.org/wiki/Python&sa=U&ved=0ahUKEwiFn5akusDbAhWGG5QKHTbRB0MQFggpMAI&usg=AOvVaw1Q3vLCegiqQigy-NIqrrx5 ``` スクリプトが取得してきたurlのリンク先 python公式 侍エンジニア塾 wkipedia
回答: 通常のブラウザ操作で得られる検索結果ページ(HTML)と提示コードで得られる結果は異なっていると思われます。 提示された文字列`/url?q=~`から目的の文字列を得るには`'\?q\=(.+?)&'`のような正規表現で可能だと思われますが、google検索結果のスクレイピングは認められていないようです。 詳細は以下を確認ください。 Rubyで作るクローラーについて2 自動化されたクエリ