python - 我们如何在 Python 3 中以后续方式附加列表?
问题描述
这是我的代码:
import requests
from bs4 import BeautifulSoup
url = 'https://www.newegg.com/CPUs-Processors/Category/ID-34'
r = requests.get(url)
htmlContent = r.content
soup = BeautifulSoup(htmlContent, 'html.parser')
processor_price = []
prices = soup.find_all('li', {"class": "price-current"})
for price in prices:
processor_price.append(price.text.split())
print(processor_price)
我得到这个输出:
[['$414.99', '(24', 'Offers)–'], ['$709.99', '(12', 'Offers)–'], ['$319.99', '(34', 'Offers)–'], ['$439.99', '(12', 'Offers)–'], ['$199.99', '(31', 'Offers)–'], ['$71.87', '(26', 'Offers)–'],
['$289.99', '(15', 'Offers)–'], ['$164.99', '(28', 'Offers)–'], ['$214.99', '(16', 'Offers)–'], ['$304.99', '(20', 'Offers)–'], ['$199.99', '(13', 'Offers)–']]
我需要这个输出:
['$414.99','$709.99','$319.99','$439.99'...]
解决方案
做这个额外的处理。
for price_array in processor_price:
print(price_array[0])
这将让您解析每个列表的第一个元素。然后,您可以将其打包到单独的列表中。
final_list = []
for price_array in processor_price:
final_list.append(price_array[0])
print(final_list)
推荐阅读
- azure - Azure 虚拟机 ARM 模板 CopyIndex 排除 avSet
- laravel-authentication - Laravel lighthouse 4.16 在不使用已弃用的@middleware 的情况下获取当前用户
- r - 计算每个值的行数并将它们绘制在 R 中
- c# - WeakEventManager 没有正确处理接口?
- haskell - 懒惰和纯洁有什么关系?
- regex - Elasticsearch 在 dls(文档级安全)查询中使用正则表达式过滤访问
- javascript - 使用 Vuejs、Webpack 和 tailwindcss 创建一个 Electron 应用程序
- python - 如何在kivy中随时间变化功能?
- hangfire - 如何定制hangfire表?
- excel - VBA - 更改范围内的公式