59365


一つのページをスクレイピングして、タイトルなどを取得するコードがあります。

[code]

    url = "https://xxxxxxxx"
    html = urllib.request.urlopen(url)
    soup = BeautifulSoup(html, "html.parser")
    title = soup.find("h1").get_text()
    
    print(title)
    
[/code]

別に、URLが記載されたCSV（URLが1列に縦に並んでいます）があります。

この時、下記のurlの部分にCSVからURLを順に取得していけば良いのはわかるのですが、

[code]

    url = "https:xxxxxx"
    
[/code]

どのようなコードを書けば良いのかわからず困っております。  
アドバイスを頂けませんでしょうか。

コードの全体は以下のようになっております。

[code]

    from bs4 import BeautifulSoup
    import urllib.request
    from pathlib import Path
    import csv
    
    with open('check_URL.csv',encoding="utf-8") as csv_file :
        a_test = [] 
        for row in csv.reader(csv_file):
            a_test.append(row[3]) 
    
    del a_test[0]
    
    ## ここに何かのコードが必要？
    
    url = "https://xxxxxxxx"
    html = urllib.request.urlopen(url)
    soup = BeautifulSoup(html, "html.parser")
    title = soup.find("h1").get_text()
    
    print(title)
    
[/code]


CC BY-SA 4.0
2019-09-30T12:03:22.267
59364
2019-09-30T12:22:01.940
23420
question
python web-scraping
Python 複数のURLが記載されたCSVファイルから、順にURLを取得してタイトルなどをスクレイピングする方法


ここは単純に`for`ループで良いのでは？  
以下の様な感じですね。

[code]

    urltitlelist = []
    for url in a_test:
        html = urllib.request.urlopen(url)
        soup = BeautifulSoup(html, "html.parser")
        title = soup.find("h1").get_text()
        print(title)
        urltitlelist.append([url,title])
    
    print(urltitlelist)
    
[/code]


CC BY-SA 4.0
2019-09-30T12:22:01.940
59365
2019-09-30T12:22:01.940
26370
59364
answer