首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在tumblr上发布带有windows 7 64位python 3.5.1和pytumblr的图片?

在tumblr上发布带有windows 7 64位python 3.5.1和pytumblr的图片?
EN

Stack Overflow用户
提问于 2015-12-27 19:30:09
回答 1查看 274关注 0票数 2

我试图在tumblr上以一种安静的方式(没有GUI)在windows 7 64位上发布计划好的多标签图像。

我首先尝试使用imacro和firefox。它正在工作,但我不能做多个标签,而且不会沉默。

然后我尝试使用apigee和imacro,但是数据必须是Array (URL编码的二进制内容),我不知道这样做,而且不会沉默。

然后我尝试使用python和pytumblr:我安装python 2.7.11,然后是pytumblr 0.0.6 (用pip安装pytumblr)。我在网上找到一个脚本,然后编辑它:

代码语言:javascript
复制
import sys
if "F:\\Python27\\Lib\\site-packages\\pytumblr" not in sys.path:
    sys.path.append("F:\\Python27\\Lib\\site-packages\\pytumblr")

import pytumblr
from tumblr_keys import *    #this imports the content in our tumblr_keys.py file

# Authenticate via OAuth
client = pytumblr.TumblrRestClient(
    consumer_key,
    consumer_secret,
    token_key,
    token_secret
)


client.create_photo('my-blog', state="published", tags=["testing", "ok"], data="D:\\dessin.jpg")

当然,我用我的域名tumblr博客取代了我的-博客。我用tumblr_keys.py创建了一个文件

代码语言:javascript
复制
consumer_key = ''
consumer_secret = ''
token_key = ''
token_secret = ''

我在tumblr端创建一个应用程序,并激活并允许https://api.tumblr.com/console/calls/user/info

我使用空闲的python (F5)启动,没有任何附加光标在shell中闪烁,而是在tumblr上启动,没有图像发布。我检查我的防火墙没问题。

我卸载Python2.7.11并安装Python3.5.1 pytubmlrpylint

我将第一行改为:

代码语言:javascript
复制
import sys
if "F:\\Python35-32\\Lib\\site-packages\\pytumblr" not in sys.path:
    sys.path.append("F:\\Python35-32\\Lib\\site-packages\\pytumblr")

因此,路径将更改为新安装。

这一次更好,因为空闲是冗长的:

代码语言:javascript
复制
    from request import TumblrRequest
  File "F:\Python35-32\Lib\site-packages\pytumblr\request.py", line 37
    except RedirectLimit, e:
                        ^
SyntaxError: invalid syntax

我将“except RedirectLimit, e:”替换为“except RedirectLimit as e:”,如SO中所示

第61行和第75行也有同样的问题。我取代:

代码语言:javascript
复制
ImportError: No module named 'urllib2'

现在,我觉得这段代码必须是为Python的旧版本编写的,但是我继续并替换了第1行到第15行:

代码语言:javascript
复制
import urllib
try:
    import urllib.request as urllib2
except ImportError:
    import urllib2
import time
import json

try:
    from urllib.parse import urlparse
except ImportError:
    from urlparse import urlparse
from urllib.parse import parse_qsl
import oauth2 as oauth
from httplib2 import RedirectLimit

然而,再次出现了一个错误:

代码语言:javascript
复制
  File "F:\Python35-32\Lib\site-packages\pytumblr\helpers.py", line 20, in validate_params
    if len(multiple_data) > 1:
TypeError: object of type 'filter' has no len()

由于这一点,我无法找到解决办法。正如您所看到的,这是我第一次使用Python。你能帮帮我吗?

谢谢。

2015年12月28日编辑:

我尝试使用python 2.7.11简单代码:

代码语言:javascript
复制
import urllib2

def internet_on():
    try:
        response=urllib2.urlopen('http://173.194.42.5',timeout=1)
        return True
        print (ok)
    except urllib2.URLError as err: pass
    return False
    print (bad)

对于检查,python是否可以与internet进行通信,而游标在空闲时闪烁而不冗长?

我有防火墙,通讯,我去激活,没有更多。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-12-28 05:31:13

简短的回答:pytumblr还没有与Python3一起工作。使用Python2.7。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34484027

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档