0
うまく動作しているいくつかのショップ名に対して「住所」と「電話」を擦るコードを書いています。ただし、アクティビティを実行するためには2つのパラメータが設定されています。私は、 "名前"が最初の列にあり、 "蓋"が2番目の列にあり、収穫された結果がそれに応じて3番目と4番目の列に配置されるcsvファイルから同じものを実行することを期待していました。この時点で、私はどのようにCSVファイルから検索を実行できるかについては何の考えも得られません。どんな提案も大いに評価されます。 );(今の用事PEP違反)CSVファイルからリバースウェブ検索を実行できません
import csv
Names, Lids = [], []
with open("file_name.csv", "r") as f:
reader = csv.DictReader(f)
for line in reader:
Names.append(line["Name"])
Lids.append(line["Lid"])
:
import requests
from lxml import html
Names=["Literati Cafe","Standard Insurance Co","Suehiro Cafe"]
Lids=["3221083","497670909","12183177"]
for Name in Names and Lids:
Page_link="https://www.yellowpages.com/los-angeles-ca/mip/"+Name.replace(" ","-")+"-"+Name
response = requests.get(Page_link)
tree = html.fromstring(response.text)
titles = tree.xpath('//article[contains(@class,"business-card")]')
for title in titles:
Address= title.xpath('.//p[@class="address"]/span/text()')[0]
Contact = title.xpath('.//p[@class="phone"]/text()')[0]
print(Address,Contact)
おかげであなたの答えのために、zwer:
また、最適化の最初の順序は次のように、CSVをループを使ってループを交換する必要があります。私は今あなたのコードをテストし、それは魔法のように動作します。あなたは私を貪欲にしました。これに関する最後の質問。入力した結果を対応する列に書き込むにはどうすればよいですか。私はCSVで働いていましたが、それらはすべてプライマリレベルに属しています。ありがとうございました。 – SIM
これに 'csv.writer()'を使うことができます。技術的には可能ですが、ファイルを読み込んだときに更新すると怪我をする可能性がありますので、最初の例を使用して「名前」と「リード」リストを読み込んで、CSVを書き直してください一時的なCSVファイルを作成し、更新されたコンテンツを書き込み、ループが終了したら元のファイルを上書きします。 CSVを読み書きする方法については、https://docs.python.org/3/library/csv.html – zwer
にはたくさんの例があります。ありがとうございます。あなたは私の月の努力を救った。 Tc。 – SIM