首页 > 解决方案 > 在 Python 中转换单列抓取的数据 csv

问题描述

非常基本,尝试将职位列表下载到 csv。我可以在环境中看到我想要的数据。当我导出到 csv 时,没有数据。在我开始应用 csv 之前共享数据的代码。

import requests
from bs4 import BeautifulSoup 

url = 'https://www.payscale.com/research/US/Job/Accounting-and-Finance'

for jobs in soup.find_all ('a', class_ = "subcats__links__item") :
    print(jobs.text)

标签: pythoncsvweb-scraping

解决方案


我尝试运行以下代码,它运行良好:

import requests
from bs4 import BeautifulSoup 
import csv
import os

# setup the default file lookup location to cwd
__location__ = os.path.realpath(os.path.join(os.getcwd(), os.path.dirname(__file__)))


url = 'https://www.payscale.com/research/US/Job/Accounting-and-Finance'

# get the response from the url provided
response = requests.get(url)

soup = BeautifulSoup(response.text, 'html.parser')

job_data = []

with open(os.path.join(__location__,'output.csv'), 'w+') as f:
    writer = csv.writer(f)
    for jobs in soup.find_all('a', class_ = "subcats__links__item"):
        job_data.append(jobs.text)
    writer.writerow(job_data)

这将创建一个带有逗号分隔的“作业标题”的 csv 文件。

CSV输出:会计师,职员会计师,财务分析师,高级会计师,财务总监,会计经理,高级财务分析师,助理 - 会计或审计公司,财务经理,公司财务总监,财务总监,注册会计师(CPA),助理财务总监,高级经理会计师/审计师、财务顾问、银行分行经理、信用分析师、承销商、合规专员、审计师、合规官、合规经理、合规分析师、税务经理、内部审计师、会计主管、税务会计师、业务分析师, 金融/银行”, “银行助理分行经理”, 投资组合经理, 贷款官, 高级审计师, 高级承销商, 高级税务会计师, 税务助理, 风险经理, 高级职员会计师, 信贷经理, 项目会计师, 初级会计师,高级内部审计师,风险分析师,财务与行政总监,成本会计师,投资分析师,合规总监,税务准备师,欺诈调查员,副审计师,会计总监,高级财务经理,资产经理,预算分析师,财务经理,财务顾问,会计分析师、保险承销商、资金分析师、财务规划师、工厂总监、环球银行家、员工审计师、承销助理、内部审计经理、财务协调员、审计经理、高级税务经理、“财务规划与分析经理”、注册财务规划师(CFP)、财务顾问、监管合规经理、物业会计师、入门级职员会计师、高级信用分析师、税务分析师、财务分析师、薪资会计师、银行经理、财务助理、财务总监、注册代理人、财务会计师,欺诈分析师,税务总监,合规审计师,高级信息技术(IT)审计师,“贷款官,商业”,高级合规分析师,“副总裁,合规官”,计划员,财务主管,定量分析师,高级经理审计师,库务经理、内部审计总监、“财务高级分析师”、助理财务总监(财务)、主计长(财务)、财务专员、抵押贷款专员主计长(财务)、财务专员、按揭贷款主任主计长(财务)、财务专员、按揭贷款主任

谢谢,安舒尔


推荐阅读