簡體   English   中英

Python - 分配打印輸出 csv

[英]Python - assign print output csv

我正在做一個項目來抓取多個 twitter URL 並將他們的關注者計數分配給一個 csv:

username= ['LazadaPH','ZALORAPH','ShopeePH','eBayPhilippines','beauty_MNL']

for user in username:
   url = 'https://www.twitter.com/'+ user
   r = requests.get(url)
   soup = BeautifulSoup(r.content,'lxml')
   f = soup.find('li', class_="ProfileNav-item--followers")
   title = f.find('a')['title']
   num_followers = int(title.split(' ')[0].replace(',',''))
   print(user,num_followers)

輸出如下所示:

LazadaPH 52841
ZALORAPH 29786
ShopeePH 7004
eBayPhilippines 874
beauty_MNL 2469

因為我對 python 很陌生(並且不希望問一個多余的問題):但是有人可以指導我如何將此打印輸出分配給 csv 並將其本質上提取到兩列(列1 是網站字符串,第 2 列是關注者數量)。

有什么建議?

謝謝一堆!

您可以使用CSV 模塊

前任:

import csv
with open('out.csv', 'w') as csvfile:
    r = csv.writer(csvfile, delimiter=',')     #   ----> COMMA Seperated
    for user in username:
       url = 'https://www.twitter.com/'+ user
       r = requests.get(url)
       soup = BeautifulSoup(r.content,'lxml')
       f = soup.find('li', class_="ProfileNav-item--followers")
       title = f.find('a')['title']
       num_followers = int(title.split(' ')[0].replace(',',''))
       r.writerow([user,num_followers])    #  ----> Adding Rows

使您的打印語句如下: print(user,';',num_followers)以便它打印 ';' 作為值的分隔符。 然后將輸出通過管道傳輸到文件:

python yourscript.py > yourcsv.csv 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM