Python beautifulsouphtml.parser不显示所有源代码

Python beautifulsouphtml.parser不显示所有源代码,python,web-scraping,beautifulsoup,Python,Web Scraping,Beautifulsoup,首先,我想从这个URL的这个表中删除一些值: 表的图像: 在检查了源代码之后,我基本上需要从中吸取教训: 目标值的源代码: 以下是我编写的代码: from urllib.request import urlopen as uReq from bs4 import BeautifulSoup as soup my_url = "https://www.trademap.org/Product_SelCountry_MQ_TS.aspx?nvpm=1%7c076%7c%7c%7c%7cT

首先,我想从这个URL的这个表中删除一些值:

表的图像:

在检查了源代码之后,我基本上需要从中吸取教训:

目标值的源代码:

以下是我编写的代码:

from urllib.request import urlopen as uReq
from bs4 import BeautifulSoup as soup

my_url = "https://www.trademap.org/Product_SelCountry_MQ_TS.aspx?nvpm=1%7c076%7c%7c%7c%7cTOTAL%7c%7c%7c2%7c1%7c1%7c2%7c2%7c3%7c1%7c1%7c1"

uClient = uReq(my_url)
brazil_monthly_exports_html = uClient.read()
uClient.close()
brazil_monthly_export_soup = soup(brazil_monthly_exports_html, "html.parser")
brazil_monthly_export_soup.body.form.div.table
现在,如果我再深入一点,我就没什么收获了。如果我在后面加一个.t,我什么也得不到。添加.tr或findAlltr也不会显示任何值

输出:

全部的 所有产品 225,098,405 191,126,886 185,235,399 217,739,218 239,889,210 12 油籽和含油水果;杂粮、种子和水果;工业或医药。 23,500,132 21,207,738 19,557,938 26,008,460 33,517,529 27 矿物燃料、矿物油及其蒸馏产品;沥青物质;矿物 25,202,959 16,553,500 11,581,278 21,222,938 29,670,809 26 矿石、矿渣和灰烬 28,402,213 16,693,435 15,816,099 22,397,927 23,663,011 84 机械、机械装置、核反应堆、锅炉;部分 12,727,864 11,361,268 11,647,181 13,848,545 14,791,209 02 肉类及食用肉类内脏 15,417,191 13,077,586 12,655,793 13,953,388 13,292,305 87 铁路或有轨电车车辆以外的车辆及其零件和附件 9,808,166 9,604,507 10,971,033 14,724,004 12,652,789 72 钢铁 9,605,030 8,927,018 7,892,012 10,761,292 11,804,871 47 木材或其他纤维纤维素材料制成的纸浆;回收的废纸或废纸。 5,298,146 5,603,405 5,575,279 6,355,349 8,360,265 23 食品工业的残留物和废物;精制动物饲料 7,363,381 6,171,801 5,538,918 5,394,736 7,168,012 17 糖和糖果 9,616,253 7,781,310 10,585,665 11,566,378 6,672,492 89 船舶、船只和浮式结构物 2,167,168 1,985,490 3,841,358 932,484 5,765,291 09 咖啡、茶、垫子和香料 6,536,042 6,046,077 5,228,087 5,010,002 4,699,592 10 谷物 4,438,189 5,724,924 4,109,624 4,980,607 4,621,016 28 无机化学品;贵金属、稀土金属的有机或无机化合物。 3,346,932 3,403,950 3,301,028 3,852,041 4,185,991 88 飞机、航天器及其零件 4,050,744 4,503,206 4,803,093 4,045,347 3,973,881 85 电动机械和设备及其零件;录音机和放音机,电视。 4,216,053 3,649,815 3,239,912 3,435,462 3,458,453 39 塑料及其制品 3,610,243 3,483,327 3,501,806 3,656,340 3,426,433 71 天然或人工养殖的珍珠、宝石或半宝石、贵金属、包金属。 2,875,116 2,797,462 3,375,746 3,335,568 3,346,363 44 木材和木制品;木炭 2,243,112 2,271,395 2,361,478 2,779,920 3,182,251 20 蔬菜、水果、坚果或植物其他部分的制备 2,258,080 2,150,306 2,209,211 2,273,080 2,516,669 29 有机化学品 3,214,660 2,263,941 1,855,794 2,366,033 2,241,528 99 其他地方未指明的商品 180,703 149,803 2,124,969 140,501 2,222,181 48 纸和纸板;纸浆、纸或纸板制品 1,922,180 2,020,963 1,871,020 1,913,082 2,072,495 24 烟草和人造烟草替代品 2,501,868 2,186,217 2,123,366 2,092,161 1,988,179
我没看见桌子!此页面使用JavaScript添加项目,urllib和BeautifulSoup无法运行JavaScript,这可能是个问题。除了Firefox中的DevTools外,还找到了10个-你想要哪一个?。还有很多-你想得到哪一张?@furas你能看到他所说的表格吗?我看不到你在图片上显示的表格-可能你必须先填写表格,然后点击一些按钮才能得到它。@furas我找到了OP所说的手动操作,就像老鼠一样哈哈。哦,哇,字体颜色的有趣用法。。。你知道为什么我的方法不起作用吗?此外,我打算将这些页面完全废弃到过去,这意味着要浏览每一页。然而,当我在页面间切换时,URL并没有改变,这让我相信这是某种嵌入式表格?@moron为我提供了到达表格的步骤。因为我只是通过编程请求来实现的,因为你为我们共享的链接包含了一个需要本地生成的参数。哦,我明白你的意思了。。。我尝试在我的浏览器中再次加载URL,然后带着表单返回主页。参数从上到下、从左到右:出口、产品、总计-所有产品、巴西、零、年度时间序列我实际上打算获取每月时间序列,但您需要现有的会计才能访问它。月刊free@moron你有我的答案,所以如果它回答了你的问题。点击下面的按钮,您可以随意接受我的答案✓ 在答案旁边做标记。实际上。。。我正在尝试学习如何将其重新应用到其他65个国家,因此我希望学习如何根据给定参数获取所有数据。为我的无能道歉,我今天刚刚了解了BeautifulSoup
import requests
from bs4 import BeautifulSoup

payload = {'nvpm': '1|076||||TOTAL|||2|1|1|2|2|1|1|1|1'}
r = requests.get(
    "https://www.trademap.org/Product_SelCountry_TS.aspx", params=payload)
soup = BeautifulSoup(r.text, 'html.parser')


for item in soup.findAll('font', {'color': '#002B54'}):
    print(item.get_text(strip=True))