初めまして。win10でアナコンダ(最新)入れてスクレイピングを勉強し始めました。
本を読みながら作業をしているのですが、詰まるところがありお聞きしたいです。

コードは

(UHF=8にしてます)
import requests
import bs4
import csv
rs = requests.get('URL(仮)')
rs.raise_for_status()
sp = bs4.BeautifulSoup(rs.text.encode(rs.encoding), 'html.parser')
rcd = []

for elm in sp.select_one('#id(仮)'):
rcd.append(elm.string)

f = open('date.csv','a', newline='')
wrtr = csv.writer(f,delimiter=',')
wrtr.writerow(rcd)
f.close()

になります。
質問ですが
@ for elm in sp.select_one('#id'): の部分にfor elm in sp.select_one('#id').string: とするとエラー(AttributeError)になる。
しらべてみると二個以上ある場合?に .string は使えないとのことですが
どのようにしたらよいのか?
Acsvに落とし込むと文字化けする。上でuhf-8に指定しておりコーディングもしている。このようなときはどうすればよいのか?

教えてください。