Привет, я новичок в коде ie и я пытаюсь получить заголовки новостей с cnn.com, как и изображение файла Excel, прилагаемое ниже.
Однако проблема в том, что я не Не знаю, как добавить каждый столбец, например, World / Politics / Health, и мой код получает данные только из элемента LAST списка кортежей (в этом коде «policy»).
Итак, вот мой код. Заранее спасибо!
from selenium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
from bs4 import BeautifulSoup
import requests
import time
import pandas as pd
import os
from bs4 import BeautifulSoup as soup
from bs4 import NavigableString
import re
import xlsxwriter
from openpyxl import Workbook
path = "C:/Users/Desktop/chromedriver.exe"
driver = webdriver.Chrome(path)
# per section
a =['world','health','politics']
wb = Workbook()
ws = wb.active
for i in a:
nl = []
driver.get("https://edition.cnn.com/"+str(i))
driver.implicitly_wait(3)
html = driver.page_source
soup = BeautifulSoup(html, "lxml")
find_ingre = soup.select("span.cd__headline-text")
for i in find_ingre:
nl.append(i.get_text())
# make dataframe --> save xlsx
import pandas as pd
from pandas import Series, DataFrame
df = pd.DataFrame(nl)
df.to_excel("cnn_recent_topics.xlsx",index=False)
результат сейчас --->
результат, который я хочу получить --->