簡體   English   中英

如何將抓取的數據寫入 csv fromat 中?

[英]how to write the scraped data in the csv fromat?

您好,我是 python 的新手,我不知道如何將抓取的數據轉換為 csv 格式。 這是我的程序

import requests
import urllib.request

from bs4 import BeautifulSoup
import pandas



url = 'https://menupages.com/restaurants/ny-new-york/2'
response = requests.get(url)
soup = BeautifulSoup(response.text, "html.parser")


all_links = soup.find_all("a")
for link in all_links:
    print(link.get("href"))
    rows = soup.find_all('tr')
    print(rows[:10])

它刮掉了我想要的 output 並且我想將我的 output 保存在 csv 文件中。任何人請幫忙

您可以在 python csv文檔中找到以下示例。

import csv
with open('eggs.csv', 'w', newline='') as csvfile:
    spamwriter = csv.writer(csvfile, delimiter=' ',
                            quotechar='|', quoting=csv.QUOTE_MINIMAL)
    spamwriter.writerow(['Spam'] * 5 + ['Baked Beans'])
    spamwriter.writerow(['Spam', 'Lovely Spam', 'Wonderful Spam'])

如您所見,您需要做的就是將行轉換為列表,然后將其傳遞給writerow方法。

您可以將抓取的鏈接列表存儲在python列表中,然后通過創建 pandas DataFrame 創建 Z628CB5675FF524F3EZE7819 文件。

import requests
import urllib.request

from bs4 import BeautifulSoup
import pandas


url = 'https://menupages.com/restaurants/ny-new-york/2'
response = requests.get(url)
soup = BeautifulSoup(response.text, "html.parser")


all_links = soup.find_all("a")
list_links = []
for link in all_links:
    list_links.append(link.get("href"))
    rows = soup.find_all('tr')

df = pandas.DataFrame({'WebLinks':list_links})
df.to_csv('/home/stackoverflow/links.csv', index=0)

Output 文件

WebLinks
https://menupages.com/
https://menupages.com/
https://menupages.com/restaurants/cities
https://menupages.com/info/about-us
https://menupages.com/info/contact-us

暫無
暫無

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

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