質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Go

Go(golang)は、Googleで開発されたオープンソースのプログラミング言語です。

非同期処理

非同期処理とは一部のコードを別々のスレッドで実行させる手法です。アプリケーションのパフォーマンスを向上させる目的でこの手法を用います。

Q&A

0回答

989閲覧

scriptを読み込んだ後のhtmlを並列処理で取得する方法を教えて頂けませんでしょうか?

Palo_Punte

総合スコア21

Go

Go(golang)は、Googleで開発されたオープンソースのプログラミング言語です。

非同期処理

非同期処理とは一部のコードを別々のスレッドで実行させる手法です。アプリケーションのパフォーマンスを向上させる目的でこの手法を用います。

0グッド

0クリップ

投稿2020/06/12 17:22

scriptを読み込んだ後のhtmlを並列処理で取得する方法を教えて頂けないでしょうか?
下記のコードはそれぞれのurlに対しdriverを立ち上げpageを作成しています。ただこれですと何もエラーもなく止まって動かなくなってしまいできません。
driver.Start()のみmain()に移送させた場合、driver.Start()とpage, err := driver.NewPage(agouti.Browser("chrome"))の処理のみmain()に移動させてみてもできませんでした。
scriptを読み込んだ後のhtlmlを並列で取得するもっと負荷の少ないやり方があればそちらも教えて頂けませんでしょうか?
よろしくお願いいたします。

package main import ( 略 ) func main() { slice_huga := [] string{"url_1", "url_2", "url_3"} //3つのurl。実際はhttp://~ for _, url := range slice_huga { go hoge(url) } time.Sleep(time.Second * 30) } func hoge(url string){ driver := agouti.ChromeDriver( agouti.ChromeOptions("args", []string{ "--disable-gpu", "--headless", }), ) err := driver.Start() if err != nil { fmt.Println(err) } defer driver.Stop() page, err := driver.NewPage(agouti.Browser("chrome")) if err != nil { fmt.Println(err) } err := page.Navigate(url) if err != nil { fmt.Println(err) } getSource, err := page.HTML() if err != nil { fmt.Println(err) } readerCurContents := strings.NewReader(getSource) doc, err := goquery.NewDocumentFromReader(readerCurContents) if err != nil { fmt.Println(err) } doc.Find(site.Selector).Each(func(index int,selection *goquery.Selection){ (略) }) }

go 1.13
ChromeDriver 83.0.4103.39

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Kenji.Noguchi

2020/06/12 18:12

"--disable-gpu", "--headless"のオプションを削って実行して、何が起きているか確認してみては?
Palo_Punte

2020/06/14 01:46

記載していなかったのですがcentosで実行をしていました。 この場合ですと見れないのですよね?
nobonobo

2020/06/16 23:01

容易に再現可能にするため可能な限りコードを省略しないでください。 コメントの指示通り確認してみての結果などを追記して下さい。 「見れないのですよね?」ではなく見れたのか見れなかったのかが知りたいです。 ダメだったのならその時の情報をください。
nobonobo

2020/06/16 23:15

もしかしてCentOSサーバー? CentOSにはデスクトップ版もあるのでまずはデスクトップ環境で試されてみるなどをお勧めします。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問