Load tweet with TwitterAPI with Python

ไลบรารี่ TwitterAPI เป็นไลบรารี่สำหรับติดต่อกับ Twitter Rest API และ Twitter Stream API ด้วยภาษา Python

โจทย์ของเราวันนี้คือการโหลดทวีต โดยการระบุคีย์เวิร์ดและจำนวนที่ต้องการ และเซฟลงไฟล์ .txt เพื่อใช้วิเคราะห์ในลำดับต่อไป

ติดตั้ง ไลบรารี่ TwitterAPI ผ่านทางคอมมานด์ไลน์ด้วยคำสั่ง  (แต่เนื่องจากต้องใช้ไลบรารี่ requests เลยพ่วงติดตั้งควบคู่กันไปด้วย)

กรณีที่ไม่สามารถดาวน์โหลดได้ให้ลองเปลี่ยน Mirror ดู เนื่องจากผมอยู่จีน ประสบปัญหา PyPI บางเว็บติดต่อไม่ได้ ทำให้ต้องหามิลเร่อร์อื่นที่ใช้งานได้แทน

จากนั้นเข้าไปที่เว็บ https://apps.twitter.com/ กด Create New APP ใส่รายละเอียด APP และกดสร้าง เราจะได้ คีย์อยู่สี่ชุดใช้ใส่ลงไปในโค้ด คือ consumer_key,consumer_secret,access_token_key,access_token_secret

เราจะเรียกฟังก์ชั่น TwitterRestPager โดยคิวรี่ข้อมูลผ่าน search/tweets มีรายละเอียดการเขียนคิวรี่ตามลิงค์นี้ ตามโค้ดด้านบน คิวรี่คือหาทวีตทั้งหมดที่มี #iphoneX ปรากฏอยู่โดยดึงมาทีละ 100 เรคคอร์ด

จากนั้นทำการเปิดไฟล์ tweet.txt เพื่อใช้เก็บทวีต

ฟังก์ชั่น BMP ใช้ในการแก้ไขบั๊กในกรณีเจอตัวอักษรที่ไม่สามารถแสดงบน console ได้ ให้แสดงเครื่องหมาย ? แทน

จากนั้นเราจะวนลูปดึงทีละเรคคอร์ดออกมาแสดงผลและเขียนลงไฟล์ โดยผลลัพธ์อยู่ในรูปแบบของ dictionary  เอาคอมเมนท์ในโค้ดออกเพื่อดูโครงสร้างของตัวแปร โค้ดด้านบนต้องการเฉพาะ ชื่อยูสเซอร์ และข้อความที่ทวีตเท่านั้น เมื่อครบจำนวนที่ต้องการให้ออกจากลูป

ตัวอย่างผลลัพธ์ที่แสดงผ่านคอนโซล

จะเห็นว่าทวีตที่ได้ค่อนข้างเต็มไปด้วยโฆษณา การรีทวีต และในตัวทวีตเองจะประกอบไปด้วยสัญลักษณ์ แฮชแทค และลิงค์ ซึ่งต้องหาหาทาง cleansing ข้อมูลในอันดับต่อไป

Leave a Reply

Your email address will not be published. Required fields are marked *