簡體   English   中英

我在 Python 中創建了一個服務,通過 linkedin API 發布內容......但它顯示錯誤並且沒有解釋原因

[英]I created a service in Python to post content via the linkedin API... but it shows an error and doesn't explain why

我在 Python 中創建了一個服務,通過 linkedin API 發布內容......但它顯示錯誤並且沒有解釋原因

錯誤 500

headers = {
'Authorization':'Bearer KEY',
'X-Restli-Protocol-Version': '2.0.0',
'Content-Type': 'application/json',
'X-LinkedIn-Auth-Member-Id': 'urn:li:organization:87433271',
}

# Define o conteúdo a ser postado

data = {
'lifecycleState': 'PUBLISHED',
'specificContent': {
'com.linkedin.ugc.ShareContent': {
'shareCommentary': {
'text': '13sec',
},
'shareMediaCategory': 'NONE',
},
},
'visibility': {
'com.linkedin.ugc.MemberNetworkVisibility': 'PUBLIC',
},
}

# Converte o conteúdo para o formato JSON

data = json.dumps(data)

# Posta o conteúdo na página da empresa

response = requests.post(
'https://api.linkedin.com/v2/ugcPosts',
data=data,
headers=headers,
)

# Verifica se a postagem foi bem-sucedida

if response.status_code == 201:
print('Conteúdo postado com sucesso!')
else:
print('Ocorreu um erro ao postar o conteúdo:', response.text)

回復:

Ocorreu um erro ao postar o conteúdo: {"message":"Internal Server Error","status":500}

我換了json,沒解決

看起來您正在使用 UGC Post API,它已被棄用,取而代之的是 Posts API。請參閱遷移指南

這段代碼對我有用,

def share_post_linkedin_user():
message = """⚠️13SEC NOTÍCIAS CYBERSECURITY HOJE⚠️"""
description = get_title()
message = """%s\n\n%s\n%s\n%s\n%s\n%s\n #13sec #13secportal #segurancadainformacao #lgpd #hackers #vazamento #linkedin #redes #firewall #pentest #cybersecurity"""%(message, description[0], description[1], description[2], description[3], description[4])
message = json.dumps(message)
message = message.replace('"', '')


# Define o conteúdo a ser postado
data = '''{
    "author": "urn:li:person:Q7YbAD9yVB",
    "lifecycleState": "PUBLISHED",
    "specificContent": {
        "com.linkedin.ugc.ShareContent": {
            "shareCommentary": {
                "text": "%s"
            },
            "shareMediaCategory": "NONE"
        }
    },
    "visibility": {
        "com.linkedin.ugc.MemberNetworkVisibility": "PUBLIC"
    }
}'''%(message)

# Posta o conteúdo na página da empresa
response = requests.post(
    'https://api.linkedin.com/v2/ugcPosts',
    data=data,
    headers=headers,
)

# Verifica se a postagem foi bem-sucedida
if response.status_code == 201:
    print('Conteúdo postado com sucesso!')
else:
    print('Ocorreu um erro ao postar o conteúdo:', response.text)

對於使用 API 在 linkedin 中發布圖片,請遵循代碼 python

def get_id_image_linkedin_user():
    description = []
    body = '''
    {
        "initializeUploadRequest": {
                "owner": "urn:li:person:Q7YbAD9yVB"
        }
    }'''

    get_id = requests.post("https://api.linkedin.com/rest/images?action=initializeUpload", headers=headers, data=body)
    jsonStr = json.loads(get_id.text)
    description.append("%s"%(jsonStr['value']['uploadUrl']))
    description.append("%s"%(jsonStr['value']['image']))
    return description

def share_post_image_linkedin_user():
    
    image_id = get_id_image_linkedin_user()
    print("\nIniciando compartilhando de texto com imagem no Linkedin\n")
    message = """Iniciando minha carreira em cyber , obrigado."""
    message = json.dumps(message)
    message = message.replace('"', '')
    
    ### upload image
    image_upload = os.popen('curl -i --upload-file imagem.jpg -H "Authorization: Bearer XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" "%s"'%(image_id[0])).read()
    print(image_upload)

    body = '''{
    "author": "urn:li:person:Q7YbAD9yVB",
    "commentary": "%s",
    "visibility": "PUBLIC",
    "distribution": {
        "feedDistribution": "MAIN_FEED",
        "targetEntities": [],
        "thirdPartyDistributionChannels": []
    },
    "content": {
        "media": {
            "altText": "Novas",
            "id": "%s"
        }
    },
    "lifecycleState": "PUBLISHED",
    "isReshareDisabledByAuthor": false
}'''%(message, image_id[1])
    print(body)
    post_linkedin = requests.post('https://api.linkedin.com/rest/posts', headers=headers, data=body)
    print(post_linkedin.text)
    print(post_linkedin.headers)
    print(post_linkedin.status_code)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM