66753


URLの取扱銘柄一覧（テーブル）をスクレイピングをしたいのですが、  
google colab取得ができません。どのように改善したらいいでしょうか。

[code]

    import csv
    import urllib.request
    from bs4 import BeautifulSoup
    import pandas as pd
    urls = ['https://mxp1.monex.co.jp/mst/servlet/ITS/ucu/UsSymbolListGST?etf=0']
    
    for url in urls:
      html = urllib.request.urlopen(url)
      bsObj = BeautifulSoup(html, "html.parser")
      table = bsObj.findAll("table", {"class":"table-block"})[0]
      tables = table.findAll("tr")
      print(tables)
    
      with open("america.csv", "w", encoding='utf-8') as file:
        writer = csv.writer(file)
        for row in tables:
            csvRow = []
            for cell in row.findAll(['td', 'th']):
                csvRow.append(cell.get_text())
            writer.writerow(csvRow)
    
    pd.read_csv("america.csv")
    
[/code]

また、全件取得（全ページ）するにはどのようにしたらよろしいでしょうか？  
宜しくお願い致します。


CC BY-SA 4.0
2020-05-18T14:21:00.853
66750
2020-05-18T16:54:56.940
2020-05-18T16:54:56.940
3060
37033
question
python web-scraping
Python スクレイピング テーブル取得不可


該当のページを見ると、JavaScriptのClickでページ移動しているようですので、seleniumが必要なのでは？
1回の表示が20銘柄なので個別株だけでも169回の取得が必要ですね。

[seleniumでスクレイピング（次のページ対応）](https://imabari.hateblo.jp/entry/2020/03/05/215125)  
[Google
Colaboratory(Colab)でスクレイピングするときのチートシート](https://qiita.com/plumfield56/items/f344b23e453ed8a628b6)

該当ページ銘柄一覧のヘッダ部分  
[![ヘッダ部](https://i.stack.imgur.com/bBCYD.jpg)](https://i.stack.imgur.com/bBCYD.jpg)

ページ移動部分のソース  
[![スクリプト部](https://i.stack.imgur.com/NYstk.jpg)](https://i.stack.imgur.com/NYstk.jpg)

以前は取扱銘柄一覧のPDFが作られていたこともあったので、サポート窓口にそうした資料が入手できるか聞いてみた方が早いかもしれません。


CC BY-SA 4.0
2020-05-18T15:57:05.617
66753
2020-05-18T15:57:05.617
26370
66750
answer