如何将结果(url)从字符串转换为DataFrame for Pandas to_excel?



我的代码:

from bs4 import BeautifulSoup as soup
from numpy.lib.function_base import extract
import requests
import pandas as pd
Scraper2Excel = "C:\Users\Ashley\FromPython3.xlsx"
writer = pd.ExcelWriter(Scraper2Excel, engine='xlsxwriter')
READ = "C:\Users\Ashley\URLs List.xlsx"
Tickers1 = pd.read_excel(READ, sheet_name='Tickers', header=None)
Tickers = Tickers1.values.ravel()
print(Tickers)
UniformResourceLocators = pd.read_excel(READ, sheet_name= 'URLs', header=None, skiprows=1)
UniformResourceLocatorsTitles = pd.read_excel(READ, sheet_name='URLs', header=None, nrows=1).values[0]
UniformResourceLocators.columns = UniformResourceLocatorsTitles
URLs = UniformResourceLocators['Company News URL']
tick = UniformResourceLocators['Tickers']
startrow =0
for i in Tickers:
s = Tickers1.loc[(Tickers1[0]==i)]
print(s)
s.to_excel(writer, sheet_name='Sheet1', startrow= startrow, startcol= 0, header=False, index=False)
startrow += 1
url = URLs.loc[(tick==i)]
print(url)

for i in url:
html_text = requests.get(i).text
chickennoodle = soup(html_text, 'html.parser')

for link in chickennoodle.find_all('a'):
my_links = (link.get('href'))


print(my_links)

我被困在这里。my_links以字符串格式打印一堆url,我想将它们输出到excel文件。我还没能找到一种方法来转换它到一个数据框架,所以熊猫会让我使用to_excel。我是个新手,谢谢你的帮助。


#df = my_links??
df.to_excel(writer, sheet_name='Sheet2', startrow= startrow, startcol=0, header=False, index=False)
startrow += 1

writer.save()    

我要做的是在for循环之前初始化一个空列表,然后在循环中将'my_links'添加到该列表中。

然后在代码的末尾,您可以在导出到excel之前将该列表转换为df的一列。就像

mylinksList=[]
df=pd.DataFrame()
for i in url:
html_text = requests.get(i).text
chickennoodle = soup(html_text, 'html.parser')

for link in chickennoodle.find_all('a'):
my_links = (link.get('href'))
mylinksList.append(my_links)

df['links']=pd.Series(mylinksList)

最新更新