Tải bản đầy đủ (.pdf) (26 trang)

RÚT TRÍCH CÁC BÌNH LUẬN TRÊN MẠNG XÃ HỘI VỀ MỘT SỐ NHÂN VẬT NỔI TIẾNG ĐỂ PHÂN TÍCH, ĐÁNH GIÁ CẢM XÚC CỦA NGƯỜI DÙNG VỀ HỌ

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (416.05 KB, 26 trang )

ĐẠI HỌC ĐÀ NẴNG
TRƯỜNG ĐẠI HỌC BÁCH KHOA

NGUYỄN THANH HẢI

RÚT TRÍCH CÁC BÌNH LUẬN
TRÊN MẠNG XÃ HỘI VỀ MỘT SỐ NHÂN VẬT

NỔI TIẾNG ĐỂ PHÂN TÍCH, ĐÁNH GIÁ
CẢM XÚC CỦA NGƯỜI DÙNG VỀ HỌ

Chuyên ngành: Khoa học máy tính
Mã số: 8480101

TÓM TẮT LUẬN VĂN THẠC SĨ KỸ THUẬT

Đà Nẵng - Năm 2018

Cơng trình được hồn thành tại
TRƯỜNG ĐẠI HỌC BÁCH KHOA

Người hướng dẫn khoa học: TS. Trương Ngọc Châu

Phản biện 1: TS. Huỳnh Hữu Hưng

Phản biện 2: TS. Trần Văn Cường

Luận văn được bảo vệ trước Hội đồng chấm Luận văn tốt nghiệp
thạc sĩ chuyên ngành Khoa học máy tính họp tại Trường Đại học
Bách khoa Đà Nẵng vào ngày 05 tháng 01 năm 2019


Có thể tìm hiểu luận văn tại:
- Trung tâm Học liệu và Truyền thông Trường Đại học Bách khoa

Đại học Đà Nẵng tại
- Thư viện Khoa Công nghệ thông tin, Trường Đại học Bách khoa

Đại học Đà Nẵng

1

MỞ ĐẦU

1. Tính cấp thiết của đề tài, ý nghĩa thực tiễn:
Sự phát triển của khoa học công nghệ đã đem đến cho

xã hội lồi người những loại hình truyền thơng mới. Công nghệ
mới đã dẫn đến những phong cách và kiểu mẫu truyền thơng
mới. Trong khi Internet đang có một thời đại phát triển bùng nổ,
các hình thức truyền thơng mới đang ngày càng thu hút được
đông đảo người xem. Những người dùng Internet - đặc biệt là
giới trẻ, bắt đầu tìm kiếm một nơi thỏa mãn mọi nhu cầu về
thơng tin, giải trí, kết nối… và mạng xã hội ra đời, đáp ứng một
cách gần như hoàn hảo những nhu cầu đó. .

Khai phá dữ liệu (data mining) là một lĩnh vực nghiên
cứu q trình phân tích dữ liệu từ kho dữ liệu. Một trong các
nội dung cơ bản nhất trong khai phá dữ liệu và rất phổ biến là
khai phá dữ liệu web. Kỹ thuật khai phá dữ liệu này cho phép
trích xuất tri thức từ cơ sở dữ liệu khổng lồ, phương pháp này
cho phép trích xuất ra nhiều thơng tin hữu ích về các đối tượng

cụ thể, các cá nhân nổi tiếng như: các chính trị gia, ca sỹ,….

Việc nắm bắt được các thơng tin hữu ích từ mạng xã
hội, có những nhận xét tích cực lẫn tiêu cực về các cá nhân là
“người nổi tiếng” sẽ giúp các tổ chức (chính phủ hoặc phi chính
phủ), cơng ty quản lý (đối với ca sỹ, ..)……có thể thăm dị đánh
giá, phản ứng của dư luận về các cá nhân chịu sự quản lý của
mình.

Trên cơ sở đó, tơi chọn đề tài “Rút trích các bình luận
trên mạng xã hội về một số nhân vật nổi tiếng để phân tích,
đánh giá cảm xúc của người dùng về họ” để làm luận văn tốt
nghiệp.

2

Luận văn này sẽ minh họa cách làm thế nào để khai phá
dữ liệu người dùng trên mạng xã hội, làm thế nào để trích xuất
các giá trị từ mạng xã hội. Nghiên cứu này sẽ giải thích chi tiết
về kịch bản, cách thức sử dụng API của mạng xã hội để phân
tích dữ liệu lớn.
2. Mục tiêu nghiên cứu:

Trên cơ sở lý thuyết về xử lý ngơn ngữ tự nhiên, phân
tích từ vựng trong đoạn văn bản, bước đầu xây dựng ứng dụng
demo có thể phân tích ý kiến đánh giá từ một đoạn văn bản.

Dữ liệu đầu vào của chương trình được khai thác từ các
trang mạng xã hội như Facebook, Twitter.
3. Đối tượng và phạm vi nghiên cứu:


- Đối tượng nghiên cứu: Người dùng có tài khoản và
tương tác trên mạng xã hội Twitter.

- Phạm vi nghiên cứu: Mạng xã hội Twitter, ngôn ngữ
sử dụng là tiếng Anh
4. Phương pháp nghiên cứu đề tài:

- Tìm hiểu phương pháp khai thác dữ liệu từ mạng xã hội.
- Tìm hiểu các phương pháp phân lớp dữ liệu và phân
loại văn bản: học máy, SVM (support vector machine), KNN
(K-Neaset Neighbor),....
- Tiến hành phân tích và xây dựng ứng dựng mơ phỏng
cho lý thuyết nghiên cứu.
- Phân tích văn bản đã khai thác được từ mạng xã hội
để xem văn bản đó là mang ý nghĩa tích cực hay tiêu cực.
5. Ý nghĩa khoa học và thực tiễn:
- Ý nghĩa khoa học:
+ Đề xuất giải pháp thu thập dữ liệu người dùng thông
qua API của mạng xã hội.

3

+ Đề xuất kỹ thuật, đánh giá độ ổn định và khả năng
phân tích dữ liệu người dùng sử dụng mạng xã hội.

- Ý nghĩa thực tiễn:
+ Kết quả nghiên cứu sẽ giúp đánh giá sự quan tâm của
người dùng về một số nhân vật nổi tiếng mang tính tích cực hay
tiêu cực.

+ Kết quả nghiên cứu sử dụng để khảo sát người dùng
về một số nhân vật nổi tiếng một cách khách quan hơn.
6. Dự kiến kết quả đạt được.
- Minh họa cách làm thế nào để khai phá dữ liệu người
dùng trên mạng xã hội, làm thế nào để trích xuất các giá trị từ
mạng xã hội
- Xây dựng một ứng dụng demo có khả năng rút trích
thơng tin trên mạng xã hội Twitter nhằm đánh giá phản ứng của
người dùng.
7. Bố cục luận văn
Dựa trên những mục tiêu đã đề ra, ngoài các nội dung
như mở đầu thì luận văn sẽ được xây dựng với bố cục như sau:
CHƯƠNG 1: TỔNG QUAN VỀ KHAI PHÁ DỮ LIỆU

Chương này trình bày tổng quan về khai phá dữ liệu,
các kỹ thuật khai phá dữ liệu cũng như tính ứng dụng của nó
trong các lĩnh vực đời sống, đặc biệt là dữ liệu trên nền Web.
CHƯƠNG 2: CÁC PHƯƠNG PHÁP LẤY DỮ LIỆU TỪ
MẠNG XÃ HỘI

Chương này trình bày tổng quan về các mạng xã hội
phổ biến hiện nay, đặc biệt là mạng xã hội Twitter. Tìm hiểu
phương thức lấy dữ liệu từ mạng xã hội Twitter bằng công cụ
Twitter REST API. Sau đó, tìm hiểu các phương pháp phân lớp
dữ liệu như: SVM, NB, KNN, ...

4

CHƯƠNG 3: THỰC NGHIỆM VÀ ĐÁNH GIÁ
Trên cơ sở tìm hiểu và phân tích các thuật tốn liên


quan, đặc biệt là thuật toán NB, báo cáo khảo sát các phương
pháp lấy dữ liệu và phân tích dữ liệu thu được. Chương này xây
dựng một ứng dụng demo được viết bằng ngơn ngữ lập trình
Python với bộ dữ liệu 200 tweet được lấy bằng Twitter Rest
API.

5

CHƯƠNG 1: TỔNG QUAN VỀ KHAI PHÁ DỮ LIỆU

1.1. Khai phá dữ liệu
1.1.1. Khái niệm

Khai phá dữ liệu (datamining) được định nghĩa như là
một quá trình chắt lọc hay khai phá tri thức từ một lượng lớn dữ
liệu. Dataming được ví như cơng việc "Đãi cát tìm vàng" trong
một tập hợp lớn các dữ liệu cho trước.

Thuật ngữ Datamining ám chỉ việc tìm kiếm một tập
hợp nhỏ có giá trị từ một số lượng lớn các dữ liệu thô. Có nhiều
thuật ngữ hiện được dùng cũng có nghĩa tương tự với từ
Datamining như Knowledge Mining (khai phá tri thức),
knowledge extraction (chắt lọc tri thức), data/patern analysis
(phân tích dữ liệu/mẫu), data archaeoloogy (khảo cổ dữ liệu),
datadredging (nạo vét dữ liệu),...

Khai phá dữ liệu là một lĩnh vực mới được nghiên cứu,
nhằm tự động khai thác thông tin, tri thức mới hữu ích, tiềm ẩn
từ những cơ sở dữ liệu lớn cho các đơn vị, tổ chức, doanh

nghiệp, .... từ đó thúc đẩy khả năng sản xuất, kinh doanh, cạnh
tranh cho các đơn vị, tổ chức này. Các kết quả nghiên cứu khoa
học cùng với những ứng dụng thành công trong khai phá tri
thức cho thấy khai phá dữ liệu là một lĩnh vực phát triển bền
vững và mang nhiều lợi ích hơn hẳn so với các cơng cụ tìm
kiếm phân tích dữ liệu truyền thống.

6

Hình 1.1: Các bước trong Datamining và KDD
1.1.2. Các bước trong quá trình khai phá dữ liệu
Quá trình khai phá dữ liệu gồm các bước như sau:

Hình 1.2: Các bước trong khai phá dữ liệu
1.1.3. Các hướng tiếp cận và kỹ thuật áp dụng trong khai phá
dữ liệu
1.1.4. Ứng dụng của khai phá dữ liệu
1.2. Khai phá dữ liệu Web
1.2.1. Khai phá dữ liệu web

Có nhiều khái niệm khác nhau về khai phá Web, nhưng
có thể tổng quát hóa như sau: Khai phá Web là việc sử dụng các
kỹ thuật KPDL để tự động hóa q trình khám phá và trích rút
những thơng tin hữu ích từ các tài liệu, các dịch vụ và cấu trúc

7
Web. Hay nói cách khác khai phá Web là việc thăm dị những
thông tin quan trọng và những mẫu tiềm năng từ nội dung Web,
từ thông tin truy cập Web, từ liên kết trang và từ nguồn tài
nguyên thương mại điện tử bằng việc sử dụng các kỹ thuật

KPDL, nó có thể giúp con người rút ra những tri thức, cải tiến
việc thiết kế các Web site và phát triển thương mại điện tử tốt
hơn. Lĩnh vực này đã thu hút được nhiều nhà khoa học quan
tâm
1.2.2. Lợi ích của khai phá dữ liệu web
1.2.3. Khó khăn
1.2.4. Thuận lợi
1.2.5. Các kiểu dữ liệu web
Ta có thể khái quát bằng sơ đồ sau:

Hình1.3: Phân loại dữ liệu web
1.3. Các thách thức trong khai phá dữ liệu
1.3.1. Các vấn đề về Cơ sở dữ liệu
1.3.2. Một số vấn đề khác
- Quá phù hợp (Overfitting)
- Khả năng biểu đạt của mẫu
- Sự tương tác với người sử dụng và các tri thức sẵn có.
1.4. Các phương pháp tách từ hiện nay

8

1.4.1. Phương pháp Maximum Matching
1.4.2. Phương pháp giải thuật học cải biến (Transformation-
based Learning - TBL)
1.4.3. Mơ hình tách từ bằng WFST và mạng Neural
1.4.4. Phương pháp Quy hoạch động
1.5. Các công trình khai phá và xử lý dữ liệu đã được phát
triển
1.6. Kết luận Chương 1


9

CHƯƠNG 2: PHƯƠNG PHÁP RÚT TRÍCH DỮ LIỆU TỪ
MẠNG XÃ HỘI VÀ PHÂN LỚP DỮ LIỆU

2.1. Giới thiệu bài toán
Những năm gần đây, sự ra đời của mạng xã hội trực

tuyến là một trong những sự kiện thú vị nhất. Có rất nhiều mạng
xã hội trực tuyến phổ biến hiện nay
như: Facebook, Twitter, LinkedIn, … Với sự phát triển nhanh
chóng về số người sử dụng trên toàn thế giới, mạng xã hội trực
tuyến như một mơ hình thu nhỏ của thế giới thực. Do đó, mạng
xã hội trở thành nơi cất giữ thơng tin và các mối quan hệ giữa
các cá nhân, doanh nghiệp, … Những thông tin này tạo thành
“đám mây tri thức”. Việc tìm hiểu và khai thác hiệu quả những
thơng tin này sẽ tạo tiền đề cho nhiều ứng dụng khác như: hệ
thống tư vấn, hệ thống tìm kiếm thơng tin, tiếp thị trực tuyến,
điều tra tội phạm, dự đoán sự phát triển của mạng xã hội, … Vì
vậy, việc khai thác những thông tin trên mạng xã hội để áp dụng
vào thực tiễn ngày càng trở nên quan trọng.
2.2. Mạng xã hội
2.2.1. Giới thiệu
2.2.2. Các mạng xã hội phổ biến hiện nay
2.2.2.1. Facebook
2.2.2.2. Youtube
2.2.2.3. Instagram
2.2.3. Mạng xã hội Twitter

Mạng xã hội twitter ra đời vào ngày 21/3/2006 bởi Jack

Dorsey và July, tính đến tháng 5 năm 2016, Twitter có hơn 1.3
tỉ người dùng, trong đó có hơn 310 triệu người dùng tích cực
trong tháng và trung bình trên mỗi người dùng có 208 người

10

theo dõi. Trung bình có hơn 500 triệu tweet được tạo ra trên
một ngày. Điều đó có nghĩa có 6000 tweet mỗi giây. Có 80%
người sử dụng truy cập qua điện thoại, có 65.8% các công ty ở
Mỹ với hơn 100 người làm sử dụng Twitter để tiếp thị, quảng
bá.

Twitter chỉ cho phép người dùng sử dụng 140 ký tự mà
thôi. Do đo, Twitter khơng thể giống như facebook nơi chúng ta
có thể đăng tải 1 status (trạng thái) dài lê thê. Twitter cũng
không có album ảnh hay nơi để tải lên video như facebook.
Twitter cũng khơng có chế độ kết bạn, chỉ có chế độ Follow
(theo dõi) mà thôi.

Cơ chế kết nối
Cơ chế của mạng xã hội Twitter là cơ chế một chiều.
Một người theo (follow) bạn thì khơng cần phải chờ sự xác
nhận từ bạn.
Sau khi một người follow bạn thì họ sẽ nhận được các
thơng tin mà bạn tweet trên đó, tweet cũng giống như hình thức
cập nhật trạng thái của Facebook. Nhưng nếu bạn khơng follow
lại người đó thì bạn sẽ khơng thấy những cập nhật của họ. Hay
nói cách khác là bạn muốn nhìn thấy được những cập nhật từ ai
đó, bạn phải follow người đó.
Điểm mạnh của Twitter là số người follow bạn khơng

giới hạn, cịn số lượng người kết nối bạn bè trong Facebook thì
giới hạn với con số 5000. Do đó, Twitter thường được ưa thích
sử dụng bởi các doanh nghiệp, thương hiệu, hay những ngôi sao
nổi tiếng nhằm cập nhật những thơng tin về mình cho những
người quan tâm..

11

Cơ chế cập nhật
Có một điểm đặc biệt và khác với nhiều mạng xã hội
khác ở Twitter chính là việc chỉ cho phép tweet với 140 ký tự.
Đây cũng là một trong những lý do tại sao đa số người Việt
Nam khơng thích sử dụng mạng xã hội này. Thế nhưng tại sao
lại như vậy?
Đó là vì nếu như bạn ở Mỹ và một số nước mà Twitter
phát triển, bạn có thể nhận được những cập nhật từ người mà
bạn quan tâm thông qua tin nhắn SMS. Mà đa phần các thiết bị
di động chỉ giới hạn số ký tự cho một tin nhắn là 160 ký tự.
Vậy vì sao lại khơng phải là 160 ký tự mà là 140 ký tự?
Đó là vì 20 ký tự kia được dành để hiển thị cho tên người cập
nhật.
Mặt khác, việc cập nhật một status với số lượng ký tự ít
ỏi này cũng tạo nên một thói quen cho người dùng. Nhất là đối
với thời buổi bận rộn hiện nay.
Tuy nhiên, hiện nay Twitter chưa hỗ trợ phần gửi tin
nhắn SMS ở Việt Nam. Đó cũng là một trong những lý do chính
khiến cho Twitter khơng thể phát triển được ở Việt Nam.
Từ những gì đã nêu ở trên, các bạn sẽ dễ dàng nhận
thấy rằng Twitter rất tiện lợi trong ba vấn đề sau:
Đối với bạn bè quan tâm đến bạn: Khi bạn đang ở đâu

đó, bạn đi đâu đó, bạn chỉ cần tweet lên twitter thì bạn bè thân
của bạn sẽ biết được mà không cần phải gọi điện thoại hay nhắn
tin.
Đối với doanh nghiệp và người dùng: Các doanh
nghiệp sẽ dễ dàng cung cấp thông tin đến với người tiêu dùng
của họ thông qua việt tweet lên Twitter. Người dùng cũng dễ

12

dàng nhận được các thơng tin hỗ trợ và những chương trình
khuyến mãi, hay các thông tin về sản phẩm mới.

Đối với các ngôi sao có nhiều fan hâm mộ: Các ngơi
sao có thể cập nhật những gì mình đang làm, những chương
trình mà mình tham gia, các buổi biểu diễn… Các fan hâm mộ
cũng có thể nhận được thơng tin này một cách nhanh nhất trực
tiếp từ chính thần tượng của họ.

Qua đó, các bạn cũng thấy rằng không cần phải thông
qua các báo đài, bạn vẫn có thể nhận được thơng tin một cách
nhanh nhất một cách trực tiếp từ người bạn cần theo dõi.

Ngồi ra, Twitter cịn có cơ chế retweet, tức là tweet lại
thông tin từ người khác đã tweet. Đây cũng chính là một trong
những điểm mạnh của Twitter, thơng tin lan truyền một cách
nhanh chóng.
2.3. Phương pháp rút trích dữ liệu từ mạng xã hội Twitter
2.3.1. Twitter REST API

Chúng ta đã tìm hiểu ở trên thì Twitter là một mạng

thơng tin và là phương tiện giao tiếp cung cấp hơn 200 triệu
tweet mỗi ngày. Nền tảng Twitter cung cấp đường truy cập tới
khối dữ liệu đó thơng qua Twitter API. Mỗi API biểu thị một
khía cạnh của Twitter, và cho phép developer viết và mở rộng
ứng dụng của họ theo một cách hoàn toàn mới và sáng tạo.

REST API cho phép lập trình viên truy cập vào một vài
core nguyên thuỷ của Twitter bao gồm các timeline, các cập
nhật status, và thông tin người dùng. Bạn có thể xây dựng
profile của một người dùng: tên của họ, Twitter họ đang dùng
và tập hợp những người mà họ đang theo dõi trên Twitter – tất
cả chỉ với một vài lời gọi RESTful API. Thêm vào đó, để cho

13

phép truy nhập vào timeline, status, user object thơng qua lập
trình, API này cung cấp cho lập trình viên rất nhiều những
phương thức tích hợp để giao tiếp với Twitter.

Hiện Twitter REST API có phiên bản 1.0 và phiên bản
1.1, tuy nhiên bản 1.0 không được sử dụng nữa. Phiên bản gần
nhất là REST API 1.1.
2.3.2. Các phương thức của REST API v1.1
2.3.2.1. Timelines

GET statuses/mentions_timeline: Trả về 20 thơng tin
gần nhất có đề cập tới người dùng ( tweet bao
gồm @screen_name của người dùng ) cho người dùng đã đăng
nhập. Phương thức này có thể trả về tới 800 tweet.


GET statuses/user_timeline: Trả về một tập những
Tweet gần đây nhất đăng bởi người dùng được chỉ ra bởi thông
số screen_name hoặc user_id. Timelime của người dùng được
bảo mật, sẽ chỉ nhận những request từ người dùng đó (xác nhận
bằng đăng nhập) hoặc một người theo dõi người dùng đó đã
được cho quyền xem. Phương thức này có thể trả vời tới 3200
Tweet gần nhất của người dùng.

GET statuses/home_timeline: Trả về tập hợp những
Tweet và Retweet gần nhất được đăng bởi người dùng đăng
nhập và những người dùng mà họ đang theo dõi. Home timeline
là trung tâm của những tương tác giữa người dùng và dịch vụ
Twitter. Có thể lấy được tới 800 tweet từ home timeline. Kết
quả trả về dễ thay đổi trong trường hợp user theo dõi nhiều
người dùng khác hoặc theo dõi những người dùng thường
xuyên tweet.

GET statuses/retweets_of_me: Trả về những tweet

14

gần nhất được tạo bởi người dùng đăng nhập hiện tại mà những
tweet này đã được retweet bởi những người khác. Timeline này
là một tập con của GET statuses/user_timeline của người dùng.
2.3.2.2. Tweets

GET statuses/retweets/:id: Trả về tập hợp của 199
retweet gần nhất theo thông số id.

GET statuses/show/:id: Trả về một tweet duy nhất, chỉ

ra bởi thông số id.

POST statuses/destroy/:id: Xố một status chỉ ra bởi
thơng số ID bắt buộc phải có. Người dùng đăng nhập bắt buộc
phải là người đăng status đã được chỉ ra. Trả về status đã xố
trong trường hợp thành cơng.

POST statuses/update: Cập nhật trạng thái hiện tại của
người đăng nhập. Để upload một bức ảnh đi cùng với tweet, sử
dụng POST statuses/update_with_media. Với mỗi lần cập nhật,
dòng cập nhật sẽ được so sánh với những tweet gần đây của
người dùng đăng nhập. Những cập nhật gây ra kết quả trùng lặp
sẽ bị chặn lại và báo về lỗi 403. Vì vậy người dùng khơng thể
cập nhật những dịng trạng thái giống nhau một cách liên tiếp.
Số lượng cập nhật liên tiếp trong một khoảng thời gian nhất
định cũng bị giới hạn, do đó người dùng sẽ nhận được lỗi HTTP
403 nếu vượt quá giới hạn này.

POST statuses/retweet/:id: Retweet một tweet nào đó.
Trả về tweet nguồn với thông tin retweet được nhúng vào

POST statuses/update_with_media: Cập nhật trạng
thái của người dùng đăng nhập và đính kèm một media để
upload. Nói cách khác, nó tạo ra một tweet với một bức ảnh
đính kèm. Khơng giống POST statuses/update, phương thức

15

này yêu cầu dữ liệu raw và được chia làm nhiều phần. POST
request Content-Type của bạn cần phải được thiết lập là

multipart/form-date với thông số media.

Dịng tweet có thể đi kèm với URL của media, nhưng
sẽ làm giảm số lượng kí tự được cho phép trong dong tweet đó.
Nếu URL làm tweet dài hơn 140 kí tự, tweet sẽ bị từ chối và kết
quả trả về lỗi 403.

GET statuses/oembed: Trả về thông tin cho phép tạo
ra dạng nhúng của một Tweet trong site của bên thứ ba.
Endpoint này cho phép thay đổi (customize) một chút cho dạng
hiển thị cuối cùng Tweet được nhúng, cần lưu ý rằng dạng hiển
thị của Tweet được đưa ra có thể thay đổi theo thời gian để
thích hợp với yêu cầu hiển thị của Twitter. Không nên nghĩ rằng
các thông số class hoặc id sẽ giữ nguyên trạng ở kết quả trả về.

GET statuses/retweeters/ids: Trả về một tập hợp có
thể lên tới 100 ID người dùng mà những người này đã retweet
tweet được chỉ ra bởi thong số id. Phương thức này trả về kết
quả tương tự như GET statuses/retweets/:id và thay thế phương
thức GET statuses/:id/retweeted_by/ids của API phiên bản 1.
2.3.2.3. Tìm kiếm

GET search/tweets: Trả về một tập hợp các Tweet
tương ứng truy vấn được gọi. Cần lưu ý rằng Twitter search sẽ
không trả về một tập hợp Tweet với cấu trúc hồn hảo. Khơng
phải tất cả các tweet sẽ được đánh thứ tự và cũng khơng phải tất
cả có thể search được. Ở API phiên bản 1.1, cấu trúc kết quả trả
về của API tìm kiếm đã được sửa đổi để trả về những Tweet
object giống với những object bạn tìm thấy được ở API và nền
tảng REST


16

2.3.2.4. Streaming
POST statuses/filter: Trả về những status công khai đã

được lọc qua filter. Nhiều thơng số có thể được định rõ để cho
phép hầu hết các máy client sử dụng một kết nối tới Streaming
API. Cả request GET và POST đều được hỗ trợ. Nhưng request
GET với q nhiều thơng số có thể khiến request bị từ chối vì
URL quá dài. Sử dụng một POST request để tránh trường hợp
URL dài.

GET statuses/sample: Trả về một lượng nhỏ những
mẫu ngẫu nhiên của tất cả những status cơng khai. Những
Tweet trả về mặc định thường có khả năng truy nhập giống
nhau, vì thế nếu hai client cùng connect tới một endpoint họ sẽ
thấy những Tweet giống nhau.

GET statuses/firehose: Endpoint này yêu cầu quyền
truy nhập đặc biệt. Trả về tất cả các status công khai. Một lượng
nhỏ các ứng dụng yêu cầu cấp độ truy nhập này. Sử dụng kết
hợp các nguồn khác và nhiều cấp độ truy nhập một cách sáng
tạo có thể đáp ứng được hầu hết các nhu cầu của các ứng dụng.

GET user: Lấy các message của một người dùng.
GET site: Lấy message của một tập các người dùng.
2.3.2.5. Tin nhắn trực tiếp
Tin nhắn trực tiếp là những tin nhắn ngắn, không công
khai giữa hai người dùng. Truy nhập tới tin nhắn trực tiếp được

quản lý bởi The Application Permission Model.
GET direct_messages: Trả về 20 tin nhắn trực tiếp gần
nhất được gửi tới người dùng đăng nhập. Bao gồm thông tin chi
tiết về người gửi và người nhận. Bạn có thể request tới 200 tin
nhắn trực tiếp mỗi lần gọi, và có thể tới cực đại là 800 tin nhắn

17

trực tiếp. Chú ý, phương thức này yêu cầu một access token với
quyền RWD (đọc, viết, tin nhắn trực tiếp ).

GET direct_messages/sent: Trả về 20 tin nhắn trực
tiếp gần nhất được gửi bởi người dùng đăng nhập. Bao gồm
thông tin chi tiết về người nhận và người gửi. Bạn có thể
request tới 200 tin nhắn trực tiếp mỗi lần gọi, và có thể tới cực
đại là 800 tin nhắn trực tiếp.

GET direct_message/show: Trả về một tin nhắn trực
tiếp duy nhất, chỉ ra bởi id.

POST direct_messages/destroy: Xoá tin nhắn trực
tiếp được với id cho trước. Người dùng đăng nhập bắt buộc phải
là người nhận của tin nhắn đã được chỉ ra. Phương thức này yêu
cầu một access token với quyền RWD (đọc, viết, tin nhắn trực
tiếp )

POST direct_messages/new: Gửi một tin nhắn trực
tiếp tới người dùng với ID cho trước với người gửi là người
dùng đăng nhập. Cần cả thông số người dùng và đoạn tin nhắn
và phải là một request POST. Trả về kết quả là tin nhắn được

gửi và định dạng request trong trường hợp thành công.
2.3.2.6. Bạn bè và những người theo dõi

GET friendships/no_retweets/ids: Trả về một tập hợp
của các user_id mà người dùng đăng nhập không muốn nhận
retweet từ những người này. Sử dụng POST friendships/update
để thiết lập trạng thái “no retweets” cho những tài khoản của
những người dùng trên đối với trang của người dùng hiện tại.

GET friends/ids: Trả về tập hợp của những ID của
những người dùng mà người dùng được nhắc tới đang theo dõi (
có thể nói cách khác là bạn của họ ).

18

GET followers/ids: Trả về tập hợp những ID của
những người dùng đang theo dõi người dùng được chỉ đến.

GET friendships/incoming: Trả về tập hợp của những
ID của tất cả những người đang đợi request follow của họ tới
người dùng hiện tại được chấp nhận.

GET friendships/outgoing: Tra về tập hợp của ID của
tất cả những người mà người dùng hiện tại đang chờ request
follow gửi tới họ được chấp nhận.

POST friendships/create: Cho phép người dùng hiện
tại theo dõi người dùng được chỉ ra bởi ID. Trả về người dùng
được theo dõi với format giống request trong trường hợp thành
công. Trả về một chuỗi miêu tả tại sao request thất bại trong

trường hợp này.

POST friendships/destroy: Cho người dùng hiện tại
không theo dõi người dùng với ID cho trước nữa. Trả về người
dùng bị bỏ theo dõi với định dạng giống với request trong
trường hợp thành công. Trả về một chuỗi miêu tả tại sao request
thất bại trong trường hợp này. Những action trong phương thức
này được tạo ra không đồng thời và sự thay đổi sẽ được đồng bộ
dần dần.

POST friendships/update: Cho phép người dùng hiện
tại cho quyền hoặc bỏ quyền retweet và thông báo tới thiết bị từ
một người dùng khác.

GET friendships/show: Trả về thông tin chi tiết về
liên hệ bạn bè giữa hai người dùng bất kỳ.

GET friends/list: trả về tập hợp các object người dùng
mà người dùng hiện tại đang theo dõi. Kết quả trả về được sắp
xếp thứ tự thời gian. Tuy nhiên thứ tự này có thể bị thay đổi.


×