কমান্ড লাইন থেকে টুইটগুলি কীভাবে পুনরুদ্ধার করবেন?


11

কমান্ড লাইন থেকে কারও টুইটগুলি পুনরুদ্ধার করার কি সহজ উপায় আছে?

অ্যাকাউন্টটি সর্বজনীন হবে এবং কমান্ড - বা স্ক্রিপ্ট, প্রয়োজনে - সমস্ত পাঠানো ফাইলের জন্য নির্দিষ্ট বা সংখ্যক সাম্প্রতিক টুইটগুলি উদ্ধৃত করবে, মেটাডেটা ছাড়াই প্রথম লাইনটিতে সর্বাধিক নতুন।

এপিআই ব্যবহার না করে কেবল বাশ।


পাইথন এপিআই, সহজ এবং মিষ্টি ব্যবহার করুন
বিগস্যাক

আমি যেভাবে পছন্দ করব তা নয়, তবে কৌতূহলের বাইরে কোন পাইথন এপিআই, কোনও লিঙ্ক, বা এটি স্টোরগুলিতে রয়েছে?
স্ট্রাপাকোভস্কি

1
পাইথন-টুইটার এপিআই র‌্যাপার রয়েছে।
জোকারডিনো

উত্তর:


7

কাছের তারিখ থেকে, টুইটার আপনাকে OAuth কী না করে তাদের এপিআইতে প্রবেশ করতে দেবে না। তবে কাজের ভিত্তিতে আপনি অনুসন্ধান API ব্যবহার করতে পারেন। এটি শান্ত, তাই আপনি curlJSON ফর্ম্যাটে অনুসন্ধানের ফলাফলগুলি পুনরুদ্ধার করতে ব্যবহার করতে পারেন । উদাহরণস্বরূপ, আপনি যদি @ জাভার টুইটগুলি পুনরুদ্ধার করতে এবং ফাইলটিতে সংরক্ষণ করতে চান তবে ~/.tweetsকোডের এই লাইনটি ব্যবহার করা যেতে পারে:

curl http://search.twitter.com/search.json?q=from:java&page=1&rpp=10&callback=? >> $HOME/.tweets

এবং আপনি কোনও JSON পার্সার ব্যবহার করে ফাইলটি বিশ্লেষণ করতে পারেন।


rppপরামিতি টুইট AF সংখ্যা উদ্ধার করা হয়। callbackজাভাস্ক্রিপ্ট ফাংশন ফলাফল JSON এ কার্যকর করা হবে। আপনি যদি এপিআই সহ জাভাস্ক্রিপ্ট ব্যবহার না করেন তবে আপনি এটি ছেড়ে দিতে পারেন?, তবে এটি সরাবেন না। আমি একটি ত্রুটি ঘটায়। অনুসন্ধান এপিআই সম্পর্কিত আরও গাইডলাইন https://dev.twitter.com/docs/api/1/get/search এ পাওয়া যাবে

কমান্ড লাইন ইন্টারফেস থেকে JSON পার্স করার সরঞ্জাম রয়েছে tools যদিও আমি কখনই এটি ব্যবহার করি নি, সেরা উপকরণটির সরঞ্জাম খুঁজতে আপনাকে সহায়তা করার জন্য আমি কয়েকটি সংস্থানগুলিতে কিছু লিঙ্ক রেখে দেব:

এবং একটি সামান্য নোট হিসাবে, কিছু পাইথন বা রুবি (বা অন্য) ব্যবহার করা দ্রুত।


ভাল লাগছে, আপনাকে ধন্যবাদ @ জি_কায়া। উদাহরণস্বরূপ, সমস্ত টুইট, বা সর্বোচ্চ অনুমোদিত বা 400 টি টুইট আমি কীভাবে নির্দিষ্ট করতে পারি? কলব্যাক এবং আরপিপি বিকল্পগুলি কী? আপনি কি কমান্ড-লাইন JSON পার্সার সুপারিশ করতে পারেন?
স্ট্রাপাকোভস্কি

আপনার প্রশ্ন অনুসারে আমি আমার উত্তর সম্পাদনা করেছি। আশা করি এটি সাহায্য করবে :)

তারা দরকারী হলে আমি আনন্দিত, আপনি স্বাগত :)

আর কাজ করছে না
ডিন মেহান

1
"ত্রুটিগুলি": [{ "বার্তা":।। "টুইটার বিশ্রাম এপিআই v1 এ আর সক্রিয় নেই এপিআই v1.1 স্থানান্তর অনুগ্রহ করে dev.twitter.com/docs/api/1.1/... }]}
অশ্বারোহীদের শোভাযাত্রা

5

আপনি যদি টুইটার এপিআই ব্যবহার করতে না চান, আপনি কোনও বাশ স্ক্রিপ্ট ব্যবহার করে টুইটার প্রোফাইলের আরএসএস ফিডটি ধরে নিতে পারেন এবং সেখান থেকে এটি ফর্ম্যাট করতে এগিয়ে যেতে পারেন।

যেহেতু টুইটার এপিআই আরএসএস ফিডকে অবমূল্যায়ন করেছে, আপনি অনুসন্ধানের ফলাফলগুলি ব্যবহার করে আরএসএস ফিড তৈরি করে এটিকে কার্যকর করতে পারবেন।

আমার টুইটগুলির আরএসএস ফিড এখানে ।


যদিও আপনাকে প্রয়োজনীয় বাশ স্ক্রিপ্ট একসাথে রাখতে হবে। আরএসএস ফিডটি আনার থেকে আপনার প্রয়োজনীয়তা অনুসারে টুইটগুলি বিন্যাসকরণ পর্যন্ত।


ধন্যবাদ @ জোকারডিনো আমার যদি কাঁচা ফাইল অ্যাক্সেস থাকে তবে আমি ফাইলটি ফর্ম্যাট করতে ভাল আছি। আমি এখানে যেমন জিজ্ঞাসা করেছি ( ওয়েবঅ্যাপস.সটাকেক্সচেঞ্জ / প্রশ্নগুলি / ৩৪০66//২ ), সেখানে সমস্ত টুইটের সাথে একটি এক্সএমএল থাকত , তবে আর কিছু হবে না। আরএসএস ফিডের একটি সীমিত সময়সীমা রয়েছে এবং উদাহরণস্বরূপ, আপনি যে লিঙ্কটি পাঠিয়েছিলেন সে থেকে আপনার সমস্ত টুইটগুলি কীভাবে ডাউনলোড করবেন তা আমি খুঁজে পেলাম না। তুমি কি সাহায্য করতে পারো?
স্ট্রাপাকোভস্কি

1
স্পষ্টতই, আপনি কেবল 9 দিনের পুরানো টুইটগুলি অ্যাক্সেস করতে পারবেন। এর চেয়ে পুরানো যে কোনও কিছুই অনুসন্ধানের মাধ্যমে বা এমনকি API এর মাধ্যমে পাওয়া যায় না।
জোকারডিনো

আপনি কি নিশ্চিত যে 9 দিনের চেয়ে পুরানো টুইটগুলি পাওয়ার কোনও উপায় নেই? আমি এখানে একটি প্রশ্ন খুলেছি: webapps.stackexchange.com/questions/34070/…
স্ট্রাপাকোস্কি

ব্যবহারকারীর পৃষ্ঠায় সরাসরি যেতে আপনাকে নীচে স্ক্রোলিং রাখতে দেয় যাতে জাভাস্ক্রিপ্ট সীমা ছাড়াই পরের পৃষ্ঠাটি লোড করে। সমস্ত টুইট পুনরুদ্ধার করা কি এটি কাজে লাগানো হবে?
স্ট্রাপাকোভস্কি

এই লিঙ্কটি বলছে আপনি অনুসন্ধান API ব্যবহার করে এক সপ্তাহের পুরানো টুইটগুলি আনতে পারবেন না। এবং আমি জাভাস্ক্রিপ্ট ব্যবহার করে টুইট আনার বিষয়ে নিশ্চিত নই। আমি যা জানি, আপনি টাইমলাইন থেকে প্রায় 3000 টির বেশি টুইট বা আরও পড়তে পারবেন না।
জোকারডিনো

2

এটি স্ক্রিনসেভার ব্যবহারের জন্য তৈরি আমার স্ক্রিপ্ট

#!/bin/bash

user="$1"
user="${user:=pontifex_pl}"

last_status_url=$(lynx -dump https://twitter.com/$user \
    | grep -i "$user/status/" \
    | head -1 \
    | awk '{print $2}')

lynx -dump "$last_status_url" \
    | grep 'Twitter:' -m1 -A4 \
    | tr -d '\n' \
    | sed -e 's/[^"]*"//' -e 's/".*//' \
    | tr -s ' '

echo

1

আমি এমন একটি সরঞ্জাম তৈরি করেছিলাম যা আপনি বর্ণনা করেছেন ঠিক তার মতোই করা উচিত: টুইটার-স্ক্রিন-স্ক্র্যাপ । ডিফল্টরূপে এটি মেটাডাটা সহ জেএসএন- এ আউটপুট আসবে, তবে আন্ডারস্কোর-ক্লাইমের মতো কিছু না করে আউটপুটটি পাইপ করা তুচ্ছ, যা আপনি চান না তা ছড়িয়ে দিতে।

$ twitter-screen-scrape -u slang800 | underscore pluck text --outfmt text > outputfile

1

আপনি পাইথন + টুইপি রুট দিয়ে যেতে পারেন:

  1. আপনার নিজস্ব টুইটার অ্যাপ্লিকেশন তৈরি করা হচ্ছে (এপিআই কীগুলি পেতে)
  2. আপনার টুইটার অ্যাকাউন্টের জন্য অ্যাক্সেস টোকেন তৈরি করুন
  3. আপনার শংসাপত্রগুলির সাথে একত্রে এর মতো স্ক্রিপ্ট ব্যবহার করুন: https://gist.github.com/yanofsky/5436496

আমি এটি পরীক্ষা করেছি এবং এটি দুর্দান্ত কাজ করে। তবে এমন ব্যবহারকারীরা রয়েছেন যা তাদের টুইটগুলি সুরক্ষিত করে, তাই এটি আপনাকে সবকিছু ডাউনলোড করতে দেয় না। তবে এটি টুইটারের একটি বৈশিষ্ট্য।

সীমা এখনও 3200 এবং আপনি একটি CSV ফাইল পান।


1

আপনি twarcযদি নাসিম নিকোলাস তালেবের টুইটগুলি ব্যবহার করেন তবে সংরক্ষণাগার রাখতে চান তবে আপনি একটি উদাহরণ দেওয়ার জন্য ব্যবহার করতে পারেন।

twarc timeline nntaleb --format csv> taleb.csv 

আপনি অন্যান্য ফর্ম্যাটগুলিও ব্যবহার করতে পারেন: --format {json,csv,csv-excel}

কীভাবে কনফিগার করবেন twarc:API দুর্ভাগ্যক্রমে সম্পূর্ণ টুইটগুলি পাওয়ার একমাত্র উপায় হ'ল অ্যাপটি স্বচ্ছ হলেও আপনার প্রাথমিক সেটআপ এবং কনফিগারেশন থাকা দরকার, আপনাকেও আবেদন করতে হবে API(

জুলাই 2018 পর্যন্ত, আপনাকে অবশ্যই একটি টুইটার বিকাশকারী অ্যাকাউন্টের জন্য আবেদন করতে হবে এবং নতুন অ্যাপ্লিকেশন তৈরি করার আগে আপনাকে অনুমোদিত হতে হবে।

)

একবার আপনার অ্যাপ্লিকেশন কীগুলি পেয়ে গেলে আপনিtwarc কনফিগার কমান্ডের সাথে সেগুলি কী তা বলতে পারবেন ।

twarc configure

এই নামে একটি ফাইলে আপনার শংসাপত্রগুলি সঞ্চয় করবে .twarcআপনার home ডিরেক্টরিতে যাতে আপনি তাদের লিখে রাখা হবে না। আপনি যদি বরং তাদের সরাসরি সরবরাহ ব্যাপারে পরিবেশে তাদের সেট করতে পারেন ( CONSUMER_KEY, CONSUMER_SECRET, ACCESS_TOKEN, ACCESS_TOKEN_SECRET) অথবা কমান্ড লাইন বিকল্পগুলি ব্যবহার করে ( --consumer_key, --consumer_secret, --access_token, --access_token_secret)।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.