Python 2.7从json api中提取多个URL中的数据

时间:2014-03-14 08:24:23

标签: python json

这是我用来从多个URL中提取数据的代码。 不幸的是,我无法让它在列表中的多个URL上工作。

有什么想法吗?

import urllib
import re

urls = ("http://pool.webcoin.us/plt/index.php/?page=api&action=getpoolstatus&api_key=0c57173da8c900831fc111003ea636d5c261e79e76b670f3b51a2d325f9b94db",
        "http://uno.coin-pool.org/index.php?page=api&action=getpoolstatus&api_key=f20daa5ea5945c1b9641b81d8dd9f4b556153182c03a2a2a94d7a95abc6dc4f8",
        "http://goat.easy-mining.net/index.php?page=api&action=getpoolstatus&api_key=5d232e86cd1a0cdfdafdcb0722da48c21778d35cd8654f7dbc82202881163df9")

for url in urls:

    source = urllib.urlopen(url)
    regexp = r">(\d+(?:\.\d*)?)<"
    found = 0


    for line in source.readlines():
        if found:
            match = re.search(regexp,line)
            break
        if "networkdiff" in line:
            found = 1



    print match.groups()

1 个答案:

答案 0 :(得分:3)

试试这个

import urllib
import re

urls = ["http://ffc.coinz.pw/index.php?page=statistics&action=pool",
       "http://pool.webcoin.us/plt/index.php/?page=api&action=getpoolstatus&api_key=0c57173da8c900831fc111003ea636d5c261e79e76b670f3b51a2d325f9b94db",
       "http://uno.coin-pool.org/index.php?page=api&action=getpoolstatus&api_key=f20daa5ea5945c1b9641b81d8dd9f4b556153182c03a2a2a94d7a95abc6dc4f8",
       "http://goat.easy-mining.net/index.php?page=api&action=getpoolstatus&api_key=5d232e86cd1a0cdfdafdcb0722da48c21778d35cd8654f7dbc82202881163df9"]

for url in urls:
    source = urllib.urlopen(url)
    regexp = r">(\d+(?:\.\d*)?)<"
    found = 0

    for line in source.readlines():
        if found:
            match = re.search(regexp,line)
            break
        if "Current Difficulty" in line:
            found = 1

        for link in url(x):
            x += 1



    print match.groups()

您必须为每个网址使用循环。