Package: easy-twitter-crawler
easy_twitter_crawler推特（Twitter）采集程序，支持用户，发文，评论采集，希望能为使用者带来益处。如果您也想贡献好的代码片段，请将代码以及描述，通过邮箱（xinkonghan@gmail.com）发送给我。代码格式是遵循自我主观，如存在不足敬请指出！推特三件套（有需要可自行安装）easy_twitter_publisher推特发帖,回帖,转载https://pypi.org/project/easy-twitter-publishereasy_twitter_crawler推特采集https://pypi.org/project/easy-twitter-crawlereasy_twitter_interactors推特互动（点赞,刷阅读量等）https://pypi.org/project/easy-twitter-interactors安装pipinstalleasy-twitter-crawler主要功能search_crawler关键词搜索采集（支持热门,用户,最新,视频,照片;支持条件过滤）user_crawler用户采集（支持用户信息,用户粉丝和关注,用户发文,用户回复）common_crawler通用采集（支持发文,评论）简单使用设置代理及cookie (关键词,用户发文,用户回复,评论需要设置cookie)proxy={'http':'http://127.0.0.1:10808','https':'http://127.0.0.1:10808'}cookie='auth_token=686fa28f49400698820d0a3c344c51efdeeaf73a; ct0=5bed99b7faad9dcc742eda564ddbcf37888f8794abd6d4d736919234440be2172da1e9a9fc48bb068db1951d1748ba5467db2bc3e768f122794265da0a9fa6135b4ef40763e7fd91f730d0bb1298136b'关键词采集使用案例（对关键词指定条件采集10条数据）fromeasy_spider_toolimportcookie_to_dic,format_jsonfromeasy_twitter_crawlerimportset_proxy,set_cookie,search_crawler,TwitterFilterkey_word='elonmusk'twitter_filter=TwitterFilter(key_word)twitter_filter.word_category(lang='en')twitter_filter.account_category(filter_from='',to='',at='')twitter_filter.filter_category(only_replies=None,only_links=None,exclude_replies=None,exclude_links=None)twitter_filter.interact_category(min_replies='',min_faves='',min_retweets='')twitter_filter.date_category(since='',until='')key_word=twitter_filter.filter_join()set_proxy(proxy)set_cookie(cookie_to_dic(cookie))forinfoinsearch_crawler(key_word,data_type='Top',count=10,):set_proxy(proxy)set_cookie(cookie_to_dic(cookie))print(format_json(info))关键词采集参数说明字段名类型必须描述key_wordstring是关键词data_typestring否指定采集的板块，大小写均可（热门：Top 用户：People 最新：Latest 视频：Videos 照片：Photos）countint否采集的数量（默认不采集：-1，采集全部：0，采集指定的数量：>0）关键词过滤参数说明（对标推特搜索功能，同一参数多个值间用空格隔开）所属类别字段名类型必须描述word_categoryexactstring否精确短语word_categoryfilter_anystring否任何一词（支持多个)word_categoryexcludestring否排除这些词语 (支持多个) 示例：dog catword_categorytabstring否这些话题标签（支持多个)word_categorylangstring否语言（文档后附语言可选范围）account_categoryfilter_fromstring否来自这些账号（支持多个)account_categorytostring否发给这些账号（支持多个)account_categoryatstring否提及这些账号（支持多个)filter_categoryonly_repliesbool否仅回复filter_categoryonly_linksbool否仅链接filter_categoryexclude_repliesbool否排除回复filter_categoryexclude_linksbool否排除链接interact_categorymin_repliesint否最少回复次数interact_categorymin_favesint否最少喜欢次数interact_categorymin_retweetsint否最少转推次数date_categorysincestring否开始日期（'2023-07-20'）date_categoryuntilstring否结束日期（'2023-08-20'）用户信息采集使用案例（采集该用户信息及10条文章，10条回复，10个粉丝信息，10个关注信息）fromeasy_spider_toolimportcookie_to_dic,format_jsonfromeasy_twitter_crawlerimportset_proxy,set_cookie,user_crawlerset_proxy(proxy)set_cookie(cookie_to_dic(cookie))forinfoinuser_crawler('elonmusk',article_count=10,reply_count=10,following_count=10,followers_count=10,# start_time='2023-07-20 00:00:00',# end_time='2023-07-27 00:00:00',):set_proxy(proxy)set_cookie(cookie_to_dic(cookie))print(format_json(info))print(f"文章数：{len(info.get('article',[]))}")print(f"粉丝数：{len(info.get('followers',[]))}")print(f"关注数：{len(info.get('following',[]))}")print(f"回复数：{len(info.get('reply',[]))}")用户信息采集参数说明字段名类型必须描述user_idstring是用户名（https://twitter.com/elonmusk中的 elonmusk）article_countint否采集文章数（默认不采集：-1，采集全部：0，采集指定的数量：>0）reply_countint否采集回复数 （默认不采集：-1，采集全部：0，采集指定的数量：>0）following_countint否采集关注数 （默认不采集：-1，采集全部：0，采集指定的数量：>0）followers_countint否采集粉丝数 （默认不采集：-1，采集全部：0，采集指定的数量：>0）start_timestring否数据截取开始时间 （仅当采集文章或回复时有效）end_timestring否数据截取结束时间（仅当采集文章或回复时有效）通用采集使用案例（已知文章id，采集此文章信息）fromeasy_spider_toolimportcookie_to_dic,format_jsonfromeasy_twitter_crawlerimportset_proxy,set_cookie,common_crawlerset_proxy(proxy)set_cookie(cookie_to_dic(cookie))forinfoincommon_crawler('1684447438864785409',data_type='article',):set_proxy(proxy)set_cookie(cookie_to_dic(cookie))print(format_json(info))通用采集使用案例（已知文章id，采集此文章下10条评论）fromeasy_spider_toolimportcookie_to_dic,format_jsonfromeasy_twitter_crawlerimportset_proxy,set_cookie,common_crawlerset_proxy(proxy)set_cookie(cookie_to_dic(cookie))forinfoincommon_crawler('1684447438864785409',data_type='comment',comment_count=10,):set_proxy(proxy)set_cookie(cookie_to_dic(cookie))print(format_json(info))通用采集参数说明字段名类型必须描述task_idstring是文章id（https://twitter.com/elonmusk/status/1690164670441586688中的 1690164670441586688）data_typestring是采集类型（文章：article 评论：comment）comment_countint否采集评论数量（仅当data_type为comment时有效；默认不采集：-1，采集全部：0，采集指定的数量：>0）语言表语言代码语言名称英文名aa阿法尔语Afarab阿布哈兹语Abkhaz languageae阿维斯陀语Avestan languageaf南非语Afrikaansak阿坎语Arkan languageam阿姆哈拉语Amharican阿拉贡语Aragonesear阿拉伯语Arabicas阿萨姆语Assamav阿瓦尔语Avar languageay艾马拉语Aymaraaz阿塞拜疆语Azerbaijaniba巴什基尔语Bashkirbe白俄罗斯语Belarusianbg保加利亚语Bulgarianbh比哈尔语Biharbi比斯拉马语Bislamabm班巴拉语Bambarabn孟加拉语Bengalibo藏语Tibetan languagebr布列塔尼语Bretonbs波斯尼亚语Bosnianca加泰隆语Catalance车臣语Chechench查莫罗语Chamorroco科西嘉语Corsican languagecr克里语Kerrycs捷克语Czechcu古教会斯拉夫语Ancient Church Slaviccv楚瓦什语Chuvash languagecy威尔士语Welshda丹麦语Danishde德语Germandv迪维希语Dhivehi languagedz不丹语Bhutaneseee埃维语Ewe languageel现代希腊语Modern Greeken英语Englisheo世界语Esperantoes西班牙语Spanishet爱沙尼亚语Estonianeu巴斯克语Basquefa波斯语Persianff富拉语Fulah languagefi芬兰语Finnishfj斐济语Fijianfo法罗语Faroesefr法语Frenchfy弗里西亚语Frisianga爱尔兰语Irishgd苏格兰盖尔语Scottish Gaelicgl加利西亚语Galiciangn瓜拉尼语Guaranigu古吉拉特语Gujaratigv马恩岛语Manx languageha豪萨语Hausahe希伯来语Hebrewhi印地语Hindiho希里莫图语Greek languagehr克罗地亚语Croatianht海地克里奥尔语Haitian Creolehu匈牙利语Hungarianhy亚美尼亚语Armenianhz赫雷罗语Hereroia国际语 AInterlinguaid印尼语Indonesianie国际语 EInterlingua Eig伊博语Ibo languageii四川彝语（诺苏语）Sichuan Yi (Nuosu)ik依努庇克语According to Nupian languageio伊多语Ido languageis冰岛语Icelandicit意大利语Italianiu因纽特语Inuit languageja日语Japanesejv爪哇语Javaneseka格鲁吉亚语Georgiankg刚果语Congoki基库尤语Kikuyukj宽亚玛语Aum wide languagekk哈萨克语Kazakhkl格陵兰语Greenlandickm高棉语Cambodiankn卡纳达语Kannadako朝鲜语、韩语Korean, Koreankr卡努里语Canouliks克什米尔语Kashmirku库尔德语Kurdishkv科米语Komikw康沃尔语Cornishky吉尔吉斯语Kyrgyz languagela拉丁语Latinlb卢森堡语Luxembourgishlg卢干达语Lugan da languageli林堡语Limburgln林加拉语Lingalalo老挝语Laolt立陶宛语Lithuanianlu卢巴语Lubalv拉脱维亚语Latvianmg马达加斯加语Madagascarmh马绍尔语Marshall languagemi毛利语Maori languagemk马其顿语Macedonianml马拉亚拉姆语Malayalammn蒙古语Mongolianmo摩尔达维亚语Moldavianmr马拉提语Marathims马来语Malaymt马耳他语Maltesemy缅甸语Burmesena瑙鲁语Nauru languagenb书面挪威语Written Norwegiannd北恩德贝勒语North Ndebelene尼泊尔语Nepali languageng恩敦加语Ennastaticnl荷兰语Dutchnn新挪威语New Norwegianno挪威语Norwegiannr南恩德贝勒语South End Baylornv纳瓦霍语Navajony尼扬贾语Nyanjaoc奥克语Ochoj奥吉布瓦语Ojibwaom奥洛莫语Olomoucor奥利亚语Oriyaos奥塞梯语Ossetian languagepa旁遮普语Punjabipi巴利语Palipl波兰语Polishps普什图语Pashtopt葡萄牙语Portuguesequ凯楚亚语Kai Chu Asianrm罗曼什语Romansh languagern基隆迪语Kirundiro罗马尼亚语Romanianru俄语Russianrw卢旺达语Rwandasa梵语Sanskritsc萨丁尼亚语Sardiniansd信德语Sindhi languagese北萨米语Northern Samisg桑戈语Sango languagesh塞尔维亚-克罗地亚语Serbian - Croatiansi僧加罗语Sinhalask斯洛伐克语Slovaksl斯洛文尼亚语Sloveniansm萨摩亚语Samoansn绍纳语Shona languageso索马里语Somalisq阿尔巴尼亚语Albaniansr塞尔维亚语Serbianss斯瓦特语Swatst南索托语South Sothosu巽他语He languagesv瑞典语Swedishsw斯瓦希里语Swahilita泰米尔语Tamilte泰卢固语Telugutg塔吉克斯坦语Tajikistanth泰语Thaiti提格里尼亚语Tigrinyatk土库曼语Turkmentl他加禄语Tagalogtn塞茨瓦纳语Sethwanato汤加语Tongantr土耳其语Turkishts宗加语Zong dialecttt塔塔尔语Tatartw特威语Twain languagety塔希提语Tahitianug维吾尔语Uyghuruk乌克兰语Ukrainianur乌尔都语Urduuz乌兹别克语Uzbekve文达语Vindavi越南语Vietnamesevo沃拉普克语Volapukwa沃伦语Warrenwo沃洛夫语Wolofxh科萨语Xhosayi依地语Yiddishyo约鲁巴语Yorubaza壮语Zhuangzh中文（汉语）Chinesezu祖鲁语Zulu链接Github：https://github.com/hanxinkong/easy-twitter-crawler在线文档：https://easy-twitter-crawler.xink.top贡献者