最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python使用新浪微博api上傳圖片到微博示例

 更新時間:2014年01月10日 09:44:07   作者:  
本文介紹了Python使用新浪微博官方api發(fā)表帶圖的微博(模擬post)的功能,大家參考使用吧

復制代碼 代碼如下:

import urllib.parse,os.path,time,sys
from http.client import HTTPSConnection
from PyQt5.QtCore import *
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *

#path
ospath=sys.path[0]
if len(ospath)!=3:
    ospath+='\\'
ospath=ospath.replace('\\','/')

#api
class Api:
    def sina(self,status,pic):
        fSize=os.path.getsize(pic)
        BOUNDARY="$-img-lufei-goodboy-$"
        CRLF='\r\n'
        data=[
            #token
            '--'+BOUNDARY,
            'Content-disposition: form-data; name="access_token"',
            '',
            'xxxxxxxxxxxxxxxxxxxxxxxxxxxx',#你的access_token
            #status
            '--'+BOUNDARY,
            'Content-disposition: form-data; name="status"',
            '',
            status,
            #pic
            '--'+BOUNDARY,
            'Content-disposition: form-data; name="pic"; filename="q_17.jpg"',
            'Content-type: image/jpeg',
            ''
        ]
        #utf-8
        data=(CRLF.join(data)+CRLF).encode('utf-8')
        closing='\r\n--'+BOUNDARY+'--\r\n'
        sumlen=len(data)+len(closing)+fSize
        #----------------------------------------
        h=HTTPSConnection('upload.api.weibo.com')
        h.putrequest('POST','/2/statuses/upload.json')
        h.putheader('Content-type','multipart/form-data; boundary=%s' % BOUNDARY)
        h.putheader('Content-length',sumlen)
        h.endheaders()
        h.send(data)
        f=open(pic,'rb')
        while True:
            data=f.read(12345)
            if not data:
                break
            h.send(data)
        f.close()
        h.send(closing.encode('utf-8'))
        r=h.getresponse()
        return r.read().decode('utf-8','ignore')
api=Api()
#ui
class Dialog(QDialog):
    def __init__(self):
        super().__init__()
        #icon,title
        self.setWindowIcon(QIcon(ospath+'weibo.ico'))
        self.setWindowTitle('weibo')
        #texteditor
        self.editor=QTextEdit()
        #textline,filebutton,submit
        self.line=QLineEdit()
        brows=QPushButton('打開')
        brows.clicked.connect(self.getFileName)
        submit=QPushButton('發(fā)表')
        submit.clicked.connect(self.submit)
        #layout
        layout=QGridLayout()
        layout.setContentsMargins(0,0,0,0)
        #addwidget
        layout.addWidget(self.editor,0,0,1,2)
        layout.addWidget(self.line,1,0,1,1)
        layout.addWidget(brows,1,1,1,1)
        layout.addWidget(submit,2,0,1,2)
        #set
        self.setLayout(layout)
    def getFileName(self):
        fileName=QFileDialog.getOpenFileName()
        self.line.setText(fileName[0])
    def submit(self):
        status=self.editor.toPlainText()
        pic=self.line.text()
        self.editor.setText(api.sina(status,pic))
app=QApplication(sys.argv)
dialog=Dialog()
dialog.show()
app.exec_()

相關(guān)文章

  • 分享9個好用的Python技巧

    分享9個好用的Python技巧

    大家好,本篇文章主要講的是分享9個好用的Python技巧,感興趣的同學趕快來看一看吧,對你有幫助的話記得收藏一下,方便下次瀏覽
    2021-12-12
  • python 中的divmod數(shù)字處理函數(shù)淺析

    python 中的divmod數(shù)字處理函數(shù)淺析

    這篇文章主要介紹了python divmod數(shù)字處理函數(shù)的相關(guān)資料,感興趣的朋友一起看看吧
    2017-10-10
  • python中的flask框架Jinja?模板入門教程

    python中的flask框架Jinja?模板入門教程

    這篇文章主要介紹了?python中的flask框架Jinja?模板入門,Jinja?模板其實是?html?文件,一般情況下放在?Flask?工程的?/templates?目錄下,對python?flask?Jinja?模板相關(guān)知識感興趣的朋友一起看看吧
    2022-04-04
  • Python的Flask框架及Nginx實現(xiàn)靜態(tài)文件訪問限制功能

    Python的Flask框架及Nginx實現(xiàn)靜態(tài)文件訪問限制功能

    這篇文章主要介紹了Python的Flask框架及Nginx實現(xiàn)靜態(tài)文件訪問限制功能,Nginx方面利用到了自帶的XSendfile,需要的朋友可以參考下
    2016-06-06
  • 詳細分析Python垃圾回收機制

    詳細分析Python垃圾回收機制

    這篇文章主要介紹了Python垃圾回收機制的相關(guān)資料,文中講解非常詳細,示例代碼幫助大家更好的理解和學習,感興趣的朋友可以了解下
    2020-07-07
  • Python調(diào)用騰訊API進行人像動漫化效果實例

    Python調(diào)用騰訊API進行人像動漫化效果實例

    最近上網(wǎng)的時候看到了一個有趣的東西,叫做人物動漫化,嘗試著用python實現(xiàn)了,所以下面這篇文章主要給大家介紹了關(guān)于Python調(diào)用騰訊API進行人像動漫化效果的相關(guān)資料,需要的朋友可以參考下
    2023-06-06
  • 提升Python效率之使用循環(huán)機制代替遞歸函數(shù)

    提升Python效率之使用循環(huán)機制代替遞歸函數(shù)

    這篇文章主要介紹了提升Python效率之使用循環(huán)機制代替遞歸函數(shù)的相關(guān)知識,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-07-07
  • 在Django的form中使用CSS進行設(shè)計的方法

    在Django的form中使用CSS進行設(shè)計的方法

    這篇文章主要介紹了在Django的form中使用CSS進行設(shè)計的方法,Django是Python重多人氣開發(fā)框架中最為著名的一個,需要的朋友可以參考下
    2015-07-07
  • Python簡單I/O操作示例

    Python簡單I/O操作示例

    這篇文章主要介紹了Python簡單I/O操作,結(jié)合實例形式分析了Python針對文件的I/O讀寫及cPickle模塊相關(guān)使用操作技巧,需要的朋友可以參考下
    2019-03-03
  • python判斷輸入日期為第幾天的實例

    python判斷輸入日期為第幾天的實例

    今天小編就為大家分享一篇python判斷輸入日期為第幾天的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-11-11

最新評論

清水县| 樟树市| 托克逊县| 海晏县| 张家川| 大兴区| 历史| 辉南县| 巴青县| 岑巩县| 修武县| 思南县| 龙岩市| 新晃| 遵义县| 湛江市| 宜川县| 桂阳县| 克拉玛依市| 冀州市| 连云港市| 若尔盖县| 阿尔山市| 瑞金市| 湖南省| 大理市| 丹寨县| 石门县| 兰溪市| 句容市| 宁化县| 梨树县| 刚察县| 皋兰县| 申扎县| 海丰县| 玉树县| 崇阳县| 乌拉特后旗| 通渭县| 镇康县|