teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

3

最終的な目的を追記

2019/04/07 02:04

投稿

Kchan_01
Kchan_01

スコア110

title CHANGED
File without changes
body CHANGED
@@ -33,4 +33,8 @@
33
33
  driver.execute_script('document.getElementsByName("stock")[0].onchange(this.form)')
34
34
 
35
35
  ```
36
- あとは、変数driverに入っているHTML情報を元にSeleniumを動かす、もしくは、beautifulSOUPを取得して動かす、といういうふうにしたいのですが、URLが変更されないため、遷移後のHTMLを上書きしたりできず、スクレイピングできずにいます。
36
+ あとは、変数driverに入っているHTML情報を元にSeleniumを動かす、もしくは、beautifulSOUPを取得して動かす、といういうふうにしたいのですが、URLが変更されないため、遷移後のHTMLを上書きしたりできず、スクレイピングできずにいます。
37
+
38
+
39
+ 【最終目的】
40
+ 最終的にやりたいことは、検索結果に出てくる商品それぞれのURLを取得して、ここのページで、更に詳しい商品情報を取得することです。

2

コードを追記

2019/04/07 02:04

投稿

Kchan_01
Kchan_01

スコア110

title CHANGED
File without changes
body CHANGED
@@ -7,4 +7,30 @@
7
7
  遷移後のページでHTMLを .get(url) で取得しなおすことができません。
8
8
  URLが変わらないので取得ができないです。
9
9
 
10
- Selenium、Pythonの組み合わせで、postで表示が変わるサイトでのスクレイピングをする方法はございますでしょうか。
10
+ Selenium、Pythonの組み合わせで、postで表示が変わるサイトでのスクレイピングをする方法はございますでしょうか。
11
+
12
+ コードを追記します。
13
+ ```Python
14
+ # coding:utf-8
15
+ from selenium import webdriver
16
+ from selenium.webdriver.common.keys import Keys
17
+ import requests
18
+ from bs4 import BeautifulSoup
19
+
20
+ # アクセスするURL
21
+ url = "https://jumpcs.shueisha.co.jp/CGI/jumpcs/shop/search.cgi"
22
+ driver = webdriver.Chrome()
23
+ driver.get(url)
24
+
25
+ # 検索ワード
26
+ search = "ONE PIECE"
27
+ driver.find_element_by_id("poplinkPC01").send_keys(search)
28
+ element = driver.find_element_by_id("poplinkPC01")
29
+ element.send_keys(Keys.ENTER)
30
+
31
+ # 検索対象を在庫ありの商品→全ての商品に変更
32
+ driver.execute_script('document.getElementsByName("stock")[0].value = "off"')
33
+ driver.execute_script('document.getElementsByName("stock")[0].onchange(this.form)')
34
+
35
+ ```
36
+ あとは、変数driverに入っているHTML情報を元にSeleniumを動かす、もしくは、beautifulSOUPを取得して動かす、といういうふうにしたいのですが、URLが変更されないため、遷移後のHTMLを上書きしたりできず、スクレイピングできずにいます。

1

わかりにくい表現の修正

2019/04/07 01:59

投稿

Kchan_01
Kchan_01

スコア110

title CHANGED
File without changes
body CHANGED
@@ -5,6 +5,6 @@
5
5
 
6
6
  目的のページまでは表示させることはできたのですが、
7
7
  遷移後のページでHTMLを .get(url) で取得しなおすことができません。
8
- URLが変わらないので読み込みができないです。
8
+ URLが変わらないので取得ができないです。
9
9
 
10
10
  Selenium、Pythonの組み合わせで、postで表示が変わるサイトでのスクレイピングをする方法はございますでしょうか。