Python 在字典中保存文本的行

Python 在字典中保存文本的行,python,python-3.x,dictionary,web-scraping,beautifulsoup,Python,Python 3.x,Dictionary,Web Scraping,Beautifulsoup,我正在从网站上抓取文章的信息,对于这些文本,我想将文本的标题和描述保存为字典中的键和值 当我运行代码时,我得到一个错误不可损坏的类型:“list”。我能做些什么来解决这个问题 以下是所有代码: import requests import bs4 from bs4 import BeautifulSoup import smtplib import os bodyDict = dict() newslist = list() body = "NEWS:\n" web = requests.get

我正在从网站上抓取文章的信息,对于这些文本,我想将文本的标题和描述保存为字典中的键和值

当我运行代码时,我得到一个错误
不可损坏的类型:“list”
。我能做些什么来解决这个问题

以下是所有代码:

import requests
import bs4
from bs4 import BeautifulSoup
import smtplib
import os
bodyDict = dict()
newslist = list()
body = "NEWS:\n"
web = requests.get("http://www.infobolsa.es/news")
soup = bs4.BeautifulSoup(web.text, 'lxml')
for item in soup.find_all("article"):
    newslist.append(item.text.split("\n"))
for row in newslist:
    bodyDict[newslist[1]]=newslist[3]
print(bodyDict)

这可以使用下面的代码实现。我们需要获取页面中每个
标记的标题(在
标记中)和值(在最后一个
标记中)。我假设您希望忽略具有类
'video'
的标题标记

import requests
import bs4
bodyDict = dict()
web = requests.get("http://www.infobolsa.es/news")
soup = bs4.BeautifulSoup(web.text, 'lxml')

for item in soup.find_all("article"):

    # Find the header
    header = item.find('h3')

    # Ignore headers that are videos
    if 'video' in header.get('class', []):
        continue

    # Get the value of the last p tag
    value = item.find_all('p')[-1].text

    # Append to dictionary
    bodyDict[header.text] = value
这给了我们:

{'PharmaMar recibe 200 millones de dólares como pago inicial del acuerdo firmado con Jazz': 'PharmaMar y Jazz firmaron el pasado 19 de diciembre de 2019 un acuerdo de licencia en exclusiva para la comercialización de lurbinectedina en Estados Unidos.\xa0PharmaMar también podrá recibir hasta 800 millones de dólares adicionales en potenciales pagos por hitos, además de los royalties sobre las ventas netas.',
 'El Ibex 35, el índice con mayor fortaleza de Europa hoy': 'Los índices europeos y sus futuros, futuro del Dax y futuro del Euro Stoxx 50, a media mañana están con subidas, pero han perdido el rumbo y están a la espera de lo que pueda hacer el futuro del SP500 que les sirva de\xa0 guía para tomar una dirección. El Ibex 35 es el más destacado gracias a que el Banco Santander lidera las subidas (+3,68%).',
 'Eurostoxx 50: primer objetivo 3.730 puntos': 'Ángel Cotera, especialista de mercados de BBVA Trader analiza desde un punto de vista técnico el Eurostoxx 50.',
 'Grenergy tiene la confianza de Caixabank y su recomendación de compra': 'Los analistas otorgan un precio objetivo\xa0de 18,65 euros la compañía de renovables, lo que supone un recorrido alcista del 21,10% para los títulos de la\xa0compañía de energías renovables en el Mercado Continuo.',
 'UBS eleva la recomendación de Bankinter en un momento correctivo en bolsa': 'El organismo cree que con el mínimo histórico al que cotizan actualmente la acciones cualquier riesgo está "mejor reflejado". Sube su recomendación hasta neutral.',
 'La FED afronta su primera reunión del año sin la presión de los mercados ni de Trump': 'Juan Ramón Casanovas, Head of Private Portfolio Management, Bank Degroof Petercam Spain valora las opciones que tiene Jerome Powell en la primera reunión de la FED del año.',
 'PharmaMar tendrá en China la tecnología para detectar el coronavirus en 6 semanas': 'La biotecnológica española cuenta con la tecnología para detectar el virus y está trabajando para adaptar las máquinas\xa0de diagnóstico de Genomica con las que cuenta en Wuhan.',
 'Airbus provisiona 3.600 millones para pagar posibles sanciones por corrupción': 'Airbus ha provisionado\xa03.600 millones de euros\xa0para el pago de posibles sanciones a las autoridades francesas, británicas y estadounidenses. Las investigaciones emprendidas por dichas autoridades conciernen a acusaciones de soborno y de corrupción así como a imprecisiones en declaraciones hechas a las autoridades de los Estados Unidos de acuerdo con el International Traffic in Arms Regulations (ITAR).',
 'Logista aumenta su beneficio un 3,3% hasta los 37,2 millones': 'El distribuidor de productos minoristas Logista alcanzó un beneficio neto en su\xa0primer trimestre fiscal\xa0del año (octubre-diciembre) de 37,2 millones de euros, lo que supone un aumento del 3,3%.',
 'Santander solo aspira a rebotes a corto plazo': 'Santander continúa inmerso en una clara tendencia bajista de largo plazo que permanece vigente mientras el precio no consiga superar 3,9395 / 3,8655. Si el precio consigue respetar los mínimos del año pasado y el volumen aumenta se avanzaría en la construcción de un suelo. \xa0',
 'Banco Santander lleva al Ibex 35 por encima de los 9.500 puntos': 'El Ibex 35 arranca la sesión con subidas del 0,49% que le llevan a los 9.532 puntos. Subidas que lideran los títulos de Banco\xa0 Santander que, tras la publicación de sus resultados, ha llegado a subir más de un 3% en la apertura.',
 'El mayor banco de Canadá sobrepondera ahora las acciones de Repsol': 'Los analistas de\xa0Royal Bank of Canada (RBC) han elevado este miércoles\xa0la recomendación de Repsol de "infraponderar" hasta\xa0"sobreponderar", ya que según el mayor banco canadiense\xa0la petrolera española ha empezado a mostrar una mejor relación riesgo-rentabilidad que la mayoría de sus\xa0competidoras.',
 'Las bolsas europeas abren con tono mixto pendientes de China y la FED': 'Los índices de las principales bolsas europeas comienzan la sesión con tono mxixto. El DAX sube un 0,04%, hasta los 13.328 puntos; el FTSE -100 arranca la sesión con subidas del 0,13%, hasta los 7.491 puntos. El CAC-40 abre en los 5.926 pntos mientras que el Eurostoxx 50 abre en los 3.722 puntos tras avanzar ligeramente. El FTSE MiB en negativo sobre los 24.024 puntos. Hoy toda la atención sobre China y la primera reunión del año de la FED.',
 'Banco Santander reduce un 17% su beneficio en 2019, hasta los 6.515 millones': 'Banco Santander ha anunciado una reducción del 17% en su beneficio atribuido en 2019, hasta los 6.515 millones. Y eso a pesar de que en el cuarto trimestre la entidad incrementó en un 35% su beneficio logrando así el mayor beneficio atribuido de la historia, en los 2.783 millones. La compañía propone aumentar el dividendo en efecto.',
 'MAB: ventajas de las empresas al cotizar en Bolsa': 'Las pymes son actrices protagonistas de la economía española. Sólo alguien que no sepa de economía las consideraría actrices de reparto, ya que emplean al 80% de nuestra fuerza laboral y representan el 65% de nuestro PIB. Cuando necesitan financiación, visibilidad, liquidez, y el resto de ventajas que conlleva cotizar, disponen de una plataforma hecha a su medida: el Mercado Alternativo Bursátil (MaB). Sus integrantes volverían a dar el salto sin dudarlo, pero se quejan de que le siguen faltando tamaño y, por ende, liquidez.',
 'Tesla sigue alcista tras superar en Bolsa a Volkswagen': '\xa0',
 '"Los sectores más atractivos y que más nos gustan son los más caros: tecnología y salud"': 'Hablamos de los mercados con Josep Bayarri, director de productos, análisis e inversiones de Arquia Banca.\xa0',
 '"Creemos que es más fácil, en un año como este, invertir en pequeñas y medianas compañías"': 'Hablamos de los mercados y para ello contamos con la presencia de Álvaro de Liniers, responsable de desarrollo de negocio de Groupama AM para España.',
 'Reunión de la Fed y resultados de Logista y Santander, en la agenda del día': 'Este miércoles los inversores y analistas estarán muy pendientes del índice de confianza del consumidor Gfk, decisión de tipos de interés de la Fed, variación de ventas de viviendas pendientes y conferencia de prensa de la\xa0Comité Federal del Mercado Abierto de la Reserva Federal.'}

你至少得到了一个有这个错误的行号吗?发布完整的回溯!