CoolFace
Apppublic

reececandidate/CsvCombiner

sourceHugging Faceupdated 4y agoView on Hugging Face
0likes
app.py52 linesDownload Raw Back to root
1import streamlit as st2import pandas as pd3from datetime import datetime4 5st.title("CSV Combiner")6 7zoomInfoFile1 = st.file_uploader("ZoomInfo1 CSV")8zoomInfoFile2 = st.file_uploader("ZoomInfo2 CSV")9scrapedFile = st.file_uploader("Scraped CSV")10 11if zoomInfoFile1 is not None and scrapedFile is not None:12    if zoomInfoFile2 is not None:13        zoomInfo1 = pd.read_csv(zoomInfoFile1)14        zoomInfo2 = pd.read_csv(zoomInfoFile2)15        zoomInfo = zoomInfo1.append(zoomInfo2)16    else:17        zoomInfo = pd.read_csv(zoomInfoFile1)18 19    scrapedData = pd.read_csv(scrapedFile, engine='python')20    scrapedData["Website"] = scrapedData["companyWebsite"].apply(21        lambda x: x.replace("www.", "")22        .replace("https://", "")23        .replace("http://", "")24        .split("/")[0]25    )26    scrapedData.drop(columns="companyWebsite", inplace=True)27    zoomInfo["Website"] = zoomInfo["Website"].apply(28        lambda x: x.replace("www.", "").replace("https://", "").replace("http://", "")29    )30    scrapedDataSmall = scrapedData[["companyName", "jobName", "Website"]]31    zoomInfoSmall = zoomInfo[32        [33            "Last Name",34            "First Name",35            "Job Title",36            "Website",37            "Email Address",38            "LinkedIn Contact Profile URL",39        ]40    ].copy()41    zoomInfoSmall.rename(columns={"Job Title": "title"}, inplace=True)42    returnMe = pd.merge(scrapedDataSmall, zoomInfoSmall, how="inner", on="Website")43    st.write(44        returnMe,45    )46    st.download_button(47        "Download CSV",48        returnMe.to_csv().encode("utf-8"),49        f"{datetime.today().date()} Leads.csv",50        "text/csv",51    )52