每个值的单键打印

2024-09-27 22:45:54 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用python运行for循环来打印特定URL中的每个值,但是每个值都打印到具有相同键的新字典中,而不是将多个值插入一个字典中

如何获取要插入到单个唯一键中的特定键的所有值

kernelLinks = []

for values in output:
  links = links + ([("https://www.kaggle.com" + (values["scriptUrl"]))])

driver = webdriver.Chrome()
method = {}
dictionary = []

for url in links: 
    driver.get(url)
    driver.switch_to_frame(driver.find_element_by_tag_name("iframe"))
    data = driver.page_source
    data2 = BeautifulSoup(data, "lxml")

    for a in data2.find_all('span', class_="n"):
        data2 = BeautifulSoup(data, "lxml")
        dictionary = {}
        kernel = url
        method = a.text
        dictionary[kernel] = method
        print(dictionary)

电流输出:

{'https://www.kaggle.com/kanncaa1/data-sciencetutorial-for-beginners':'检查输出'} {'https://www.kaggle.com/kanncaa1/data-sciencetutorial-for-beginners':'数据'} {'https://www.kaggle.com/kanncaa1/data-sciencetutorial-for-beginners':'解码'} .....

期望输出:

{'https://www.kaggle.com/kanncaa1/data-sciencetutorial-for-beginners':'检查输出','数据','解码}


Tags: inhttpscomurlfordatadictionarywww
1条回答
网友
1楼 · 发布于 2024-09-27 22:45:54

我认为你的问题的相关部分是:

How can I get the all the values for a specific key to be inserted into a single unique key?

您可能需要使用另一个数据结构来保存不同的值。 例如,如果你只对不同的值感兴趣,而不是对重复的值感兴趣(如果要跟踪所有值,请切换到列表并使用附加而不是添加)此答案演示如何跟踪分配给要解析的页面上不同html元素的css类。它假定您已经以某种方式获得了元素及其类

items = [
    ('span', 'pretty'),
    ('div', 'listing'),
    ('div', 'header'),
    ('span', 'ugly'),
    ('div', 'footer'),
]

data = dict()
for elem, css_class in items:
    classes = data.setdefault(elem, set())
    classes.add(css_class)

print data

这个推测性的答案可能会让你走。除此之外,请看上面的评论,特别是在https://stackoverflow.com/help/mcve,正如@peter-wood在他的评论中已经提到的

相关问题 更多 >

    热门问题