标签: python-twitter

如何扩展python模块?在`python-twitter`包中添加新功能

扩展现有Python模块的最佳实践是什么 - 在这种情况下,我想python-twitter通过向基本API类添加新方法来扩展包.

我看过了tweepy,我也喜欢这样; 我发现我python-twitter更容易理解并扩展我想要的功能.

我已经编写了方法 - 我正在试图找出将Pythonic和破坏性最小的方法添加到python-twitter包模块中,而不是改变这个模块的核心.

python module python-module python-twitter tweepy

18
推荐指数
3
解决办法
2万
查看次数

安装在conda中找不到的包

我正在使用python 3.6作为anaconda,我试图安装python-twitter包,但没有与conda管理器兼容的包.如何在conda管理器外下载软件包以便以后使用jupyter笔记本?

python python-twitter conda

16
推荐指数
3
解决办法
2万
查看次数

Django:完全承诺Facebook和Twitter整合(Django-Facebook,django-social-auth,django-allauth)

在我发布我的问题之前,我想告诉你,我知道很少有优秀的django套餐用于twitter和facebook集成:

所以,这是我的问题:

我想要的是?

我想要:

  1. 允许用户通过Facebook和Twitter注册.(使用上述任何一种方法易于实施).
  2. 允许将多个社交帐户集成到一个用户帐户中.(我认为#2和#3都可以做到.)
  3. 从Facebook或Twitter数据创建配置文件(在fb的情况下需要扩展权限).所以,这意味着我们还需要从facebook和twitter访问数据.
  4. 允许用户从django app(活动以及表单)发布到Facebook和Twitter.
  5. 邀请和寻找Facebook好友(#3可以做到.)
  6. 提供与facebook app相同的功能.(#3可以做到.)
  7. 发布到用户拥有的Facebook页面.(我不确定#3是否可以做到.)

我的想法

如果我不得不与facebook打交道,那么我认为Django-Facebook几乎可以解答我的所有问题.但既然我也想支持twitter,我不确定应该做些什么.我只能想到:

  1. Django-Facebook for facebook + django-social-authdjango-allauth for twitter.我不确定这种组合是否有效.如果您尝试过这样的话,请告诉我.
  2. django-social-authdjango-allauth,只要其中任何一个都可以提供上述facebook功能.

[编辑:]其实我正在寻找以下两个问题的答案:

  1. 如果我选择使用django-social-auth,那么有人可以指向我的样本/代码片段与facebook和twitter进行交互.
  2. 如果我想使用Django-Facbook(因为它提供了很多功能),我可以选择它用于facebook和django-social-auth(或django-allauth)仅用于Twitter.我的意思是说使用Django-facebook和使用social-auth或allauth与twitter相关的所有内容都与facebook有关.这种组合会起作用吗?

提前感谢您宝贵的建议.

django facebook python-twitter django-socialauth django-facebook

7
推荐指数
1
解决办法
2581
查看次数

Twitter API 1.1的最佳Python-Wrapper是什么?

我最近读过"21 Recipes for Mining Twitter"这本书,他们使用的是python-twitter - Wrapper by sixohsix.

在我看来,这个库有点过时,因为它仍然区分Search API和REST API.它似乎是针对API版本1进行的,但是版本1.1 需要用于搜索Twitter的身份验证.

在sixohsix的方法中,您可以通过以下方式建立Twitter搜索:

twitter_search = twitter.Twitter(domain="search.twitter.com")
...
twitter_search.search(q="myquery")
Run Code Online (Sandbox Code Playgroud)

同时,与"常规"REST API的连接需要如下所示:

twitter.Twitter(domain='search.twitter.com', api_version='1.1',\
                     auth=twitter.oauth.OAuth(access_token, access_token_secret,\
                    consumer_key, consumer_secret))
Run Code Online (Sandbox Code Playgroud)

但我想在1.1中,搜索也需要OAuth!要么Twitter文档很混乱,要么sixohsix的库真的有点过时了.

最后一个问题:我应该轻松使用哪些Python库,最重要的是:始终如一地建立对API 1.1的搜索和其他REST调用?我看到了熊的图书馆,这似乎更具有一致性.

但也许我完全走错了道路......我想听听一些经验丰富的Python人员的建议,他们与Twitter的1.1 API进行了很多互动.谢谢.

编辑 请参阅sixohsix的Github上的#issue 109 - 该问题已修复,Search API v1.1现已包含在包装器中

python twitter wrapper python-twitter

7
推荐指数
1
解决办法
3426
查看次数

python-twitter异常处理

我试图用Python-Twitter处理错误,例如:当我在下面通过一个返回404的Twitter帐户时,我得到以下回复...

import twitter

# API connection
api = twitter.Api(consumer_key='...',
              consumer_secret='...',
              access_token_key='...',
              access_token_secret='...')



try:
    data = api.GetUser(screen_name='repcorrinebrown')
Except Exception as err:
    print(err)
Run Code Online (Sandbox Code Playgroud)

响应:

twitter.error.TwitterError: [{'code': 50, 'message': 'User not found.'}]
Run Code Online (Sandbox Code Playgroud)

如何在Except上遍历此列表

twitter python-twitter python-3.x

6
推荐指数
1
解决办法
1440
查看次数

如何在Python中使用Twitter API更快地收集推文?

对于一个研究项目,我正在使用Python-Twitter收集推文.但是,当我们的程序在一台计算机上不间断运行一周时,我们每周只能收集大约20 MB的数据.我只在一台机器上运行这个程序,所以我们不会收集两次相同的推文.

我们的程序运行一个循环,每隔60秒调用一次getPublicTimeline().我尝试通过在公共时间轴中出现的一些用户上调用getUserTimeline()来改进这一点.然而,这始终让我被禁止每次约半小时收集推文.即使没有禁令,通过添加此代码似乎也几乎没有加速.

我知道Twitter的"白名单"允许用户每小时提交更多请求.我大约三周前申请了这个,并且从那时起就没有回复,所以我正在寻找替代方案,这将使我们的计划能够更有效地收集推文,而不会超过标准的速率限制.有没有人知道从Twitter收集公共推文的更快方法?我们希望每周大约100 MB.

谢谢.

python twitter python-twitter

5
推荐指数
1
解决办法
5758
查看次数

使用 Twitter API 更改密码

有没有办法通过 python-twitter API 或一般的 twitter API 更改您的 twitter 密码?我环顾四周,但似乎无法找到此信息...

python twitter python-twitter

4
推荐指数
1
解决办法
1689
查看次数

Python Twitter search.tweets with until

我正在使用来自https://github.com/sixohsix/twitter的 Python Twitter搜索API

当我尝试使用"until"参数搜索查询时,搜索不会返回任何内容

from twitter import *

t = Twitter(auth=OAuth(....))

t.search.tweets(q = 'hello', count=3, until='2012-01-01')
{u'search_metadata': {u'count': 3, u'completed_in': 0.007, u'max_id_str': u'9223372036854775807', u'since_id_str': u'0', u'refresh_url': u'?since_id=9223372036854775807&q=hello%20until%3A2012-01-01&include_entities=1', u'since_id': 0, u'query': u'hello+until%3A2012-01-01', u'max_id': 9223372036854775807L}, u'statuses': []}
Run Code Online (Sandbox Code Playgroud)

当我搜索没有"直到"时,它通常会发现推文.当我在twitter.com/search上手动搜索时

https://twitter.com/search?q=hello%20until%3A2012-01-01&src=typd
Run Code Online (Sandbox Code Playgroud)

它通常也会发现推文.

有任何想法吗?

python twitter python-twitter

3
推荐指数
1
解决办法
6945
查看次数

使用 Python Tweepy 搜索词项交集和并集

我想使用 Python Tweepy 获取包含“love”和/或“#hate”的推文。但是使用我当前的代码如下,它只返回第一个术语(即“爱”)。我几天来一直在尝试调试和阅读 Tweepy/Twitter 文档,但无济于事。请指教。

import tweepy
import time

ckey = ""
csecret = ""
atoken = ""
asecret = ""

OAUTH_KEYS = {'consumer_key':ckey, 'consumer_secret':csecret,
    'access_token_key':atoken, 'access_token_secret':asecret}
auth = tweepy.OAuthHandler(OAUTH_KEYS['consumer_key'], OAUTH_KEYS['consumer_secret'])
api = tweepy.API(auth)

for tweet in tweepy.Cursor(api.search, q=('love' or '#hate'), since='2014-09-15', until='2014-09-16').items(500): 
    try:

        print "Tweet created:", tweet.created_at
        print "Tweet:", tweet.text.encode('utf8')

        counter += 1

    except IOError:
        time.sleep(60)
        continue
Run Code Online (Sandbox Code Playgroud)

twitter social-media python-twitter tweepy python-2.7

2
推荐指数
1
解决办法
2202
查看次数

有更快的方法吗?(python twitter位置)

我正在尝试返回一个字典,汇总最近的州中心的推文.我正在迭代所有推文,并且对于每条推文,我正在检查所有状态以查看哪个状态最接近.

什么是更好的方法来做到这一点?

def group_tweets_by_state(tweets):
    """

    The keys of the returned dictionary are state names, and the values are
    lists of tweets that appear closer to that state center than any other.

    tweets -- a sequence of tweet abstract data types """


    tweets_by_state = {}
    for tweet in tweets:
        position = tweet_location(tweet)
        min, result_state = 100000, 'CA'
        for state in us_states:
            if geo_distance(position, find_state_center(us_states[state]))< min:
                min = geo_distance(position, find_state_center(us_states[state]))
                result_state = state
        if result_state not in tweets_by_state:
            tweets_by_state[result_state]= []
            tweets_by_state[result_state].append(tweet)
        else: …
Run Code Online (Sandbox Code Playgroud)

python algorithm twitter python-twitter

1
推荐指数
1
解决办法
148
查看次数

Twitter API 搜索返回截断的推文

我正在尝试构建一个 python 程序来获取基于某个关键字的推文。然而,虽然我可以成功检索推文,但它们会被截断。

如何获取推文的全文?

代码:(代码下方的示例输出)(python-twitter 模块)

import twitter

api = twitter.Api(consumer_key=CONSUMER_KEY,
                  consumer_secret=CONSUMER_SECRET,
                  access_token_key=ACCESS_TOKEN,
                  access_token_secret=ACCESS_SECRET)
results = api.GetSearch(term="car", since="2018-04-11", until="2018-04-12", count=5)

for twt in results:
    tempTweet = (str(twt))
tweet = json.loads(tempTweet)
for key in tweet:
    print(str(key) + ": " + str(tweet[key]))

print("#############################################")
Run Code Online (Sandbox Code Playgroud)

样品输出:

created_at: Wed Apr 11 20:55:25 +0000 2018
favorite_count: 1573
hashtags: []
id: 984173096566341632
id_str: 984173096566341632
lang: en
retweet_count: 1480
source: <a href="https://about.twitter.com/products/tweetdeck" rel="nofollow">TweetDeck</a>
**text**: Caution: Disturbing video. Car speeds through red light, striking pedestrian during vigil Wednesday for …
Run Code Online (Sandbox Code Playgroud)

python twitter python-twitter

1
推荐指数
1
解决办法
2439
查看次数