-1

我有一个 Bitly 帐户,可以个性化我的 URL 缩短。如何使用 API 登录并缩短 URL 列表?

4

1 回答 1

1

这是我在 python 中使用 python requests库的解决方案

    import base64 
    import requests
    import json 

    credentials = 'USERNAME:PASSWORD'

    urls = ['www.google.com', 'www.google.co.uk', 'www.google.fr']

    def getShortURLs(urls):
        token = auth()
        return shortenURLs(token, urls)

    def auth():
        base_auth = "https://api-ssl.bitly.com/oauth/access_token"
        headers = {'Authorization': 'Basic ' + base64.b64encode(credentials)}
        resp = requests.post(base_auth, headers=headers)
        return resp.content

    def shortenURLs(token, long_urls):
        base = 'https://api-ssl.bitly.com/v3/shorten'
        short_urls = []
        for long_url in long_urls:
            if long_url:
                params = {'access_token':token, 'longUrl' : 'https://' + long_url}
                response = requests.get(base, params=params)
                r = json.loads(response.content)
                short_urls.append(r['data']['url'])
        return short_urls
于 2013-09-21T12:27:47.463 回答