代码之家  ›  专栏  ›  技术社区  ›  user3151828

使用Applescript从维基百科图表获取信息

  •  -1
  • user3151828  · 技术社区  · 11 年前

    我说的是这样的页面: http://en.wikipedia.org/wiki/Acetone 我想从存储密度、摩尔质量、沸点等的图表中获取信息。我需要程序将信息存储在单独的字符串中。是不是变量,所以:

    vapor_pressure = "24.46"
    

    不是:

    vapor_pressure = 24.46
    

    这是因为我需要在其他地方再次输入,但我已经记下了那部分。 此外,如何从字符串中删除除数字和小数点以外的所有字符?这就是我所需要的。

    2 回复  |  直到 11 年前
        1
  •  1
  •   Lri    11 年前

    您可以使用 MediaWiki API :

    do shell script "curl -s 'http://en.wikipedia.org/w/api.php?action=query&prop=revisions&rvprop=content&titles=Acetone'|sed -n 's/^| VaporPressure = \\([0-9.]*\\).*/\\1/p'"

        2
  •  0
  •   user3151828    11 年前

    我通过获取整个页面的html来解决这个问题:

    import bs4
    import urllib2
    soup = BeautifulSoup(urllib2.urlopen(http://en.wikipedia.org/wiki/Acetone).read())
    

    已将其转换为文本:

    page = soup.get_text()
    

    然后当我打印 page 我发现财产由两个换行符分隔:

    list1 = page.split('\n\n')
    

    要用蒸汽压力抓住绳子:

    vaporpressure = [x for x in list1 if "Vapor pressure" in x]
    

    然后当我打印 vaporpressure 我得到了类似的东西:

    Vapor pressure
    24.46–24.60 kPa (at 20 °C)
    

    这就是我所做的。