現在のコードで収集できるアドレス情報の他に「事業者名」「住所」「電話番号」「紹介文(◆で始まる文章)」もあわせて収集するようにしたく考えております
ご教授頂けると幸いです
https://itp.ne.jp/genre_dir/syaken/?ngr=1&sr=1このページにある情報を収集するつもりです
※titoiさん、ご覧頂いていると思います。個別依頼等の方がよろしければその旨ご指示ください
python3
1import time 2import csv 3import re 4import requests 5import bs4 6 7# 取得ページ分だけURLを生成して、配列に保持する。 8begin = 5 # 取得開始ページ 9end = 10 # 取得終了ページ 10base_url = 'https://itp.ne.jp/genre_dir/syaken/pg/{page_no}/' 11urls = [base_url.format(page_no=i) for i in range(begin, end)] 12print(urls) 13 14# 配列を一個づつ回して、htmlを解析して、メールアドレスだけ取得 15addrs = [] 16for url in urls: 17 print('fetching... ' + url) 18 res = requests.get(url) 19 soup = bs4.BeautifulSoup(res.text, 'html.parser') 20 for a_tag in soup.find_all('a', class_='boxedLink emailLink'): 21 match = re.search(r'[\w.-]+@[\w.-]+', a_tag['onclick']) 22 if match: 23 addrs.append([match.group(0)]) 24 25 time.sleep(1) # アクセス間隔 26print(addrs) 27 28with open('test.csv', 'w', encoding='utf8') as f: 29 writer = csv.writer(f) 30 writer.writerows(addrs)
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/10/29 03:05
2018/10/29 03:55
2018/10/29 04:44
2018/10/29 05:08 編集
2018/10/29 08:55