Bình quả thôi tống phục vụ khí thôi tống diên trì
Photo byFay FernandesonUnsplash
Fay FernandesTạiUnsplashThượngPhách nhiếp đíchChiếu phiến
Tại khai thủy hạng mục chi tiền(Before I started the Project)
As for why I chose to partake in this project, I wanted to be able to expand my knowledge on the resources, libraries, and software available to me as an aspiring data analyst. In doing so, I was able to get some hands-on experience using numerous AWS services, working with APIs, making a website from scratch using HTML/CSS, and using JavaScript to enhance the site.
Chí vu vi thập ma tuyển trạch tham dữ giá cá hạng mục, ngã hi vọng năng cú khoách triển ngã đối tác vi hữu bão phụ đích sổ cư phân tích sư khả dụng đích tư nguyên, khố hòa nhuyễn kiện đích tri thức. Thông quá giá dạng tố, ngã năng cú hoạch đắc sử dụng đại lượng AWS phục vụ, sử dụng API, sử dụng HTML / CSS tòng đầu khai thủy sang kiến võng trạm dĩ cập sử dụng JavaScript tăng cường võng trạm đích động thủ kinh nghiệm.
At the moment Twitter is arguably at the forefront for how millions of people receive their news. As a result, we can rely on that data to identify trends or to uncover breaking new stories and in turn allows for individuals/companies to make more informed decisions. By leveraging this resource brands can increase their public outlook by fixing or cutting their losses on a product that has poor sentiment. Furthermore, they’ll be able to better their interactions with customers around the globe.
Mục tiền, Twitter khả dĩ thuyết thị sổ bách vạn nhân như hà tiếp thu kỳ tân văn đích tối tiền duyên. Kết quả, ngã môn khả dĩ y kháo giá ta sổ cư lai thức biệt xu thế hoặc phát hiện đột phá tính đích tân cố sự, tòng nhi duẫn hứa cá nhân / công tư tố xuất canh minh trí đích quyết định. Thông quá lợi dụng giá ta tư nguyên, phẩm bài khả dĩ thông quá tu phục hoặc giảm thiếu tình tự đê lạc đích sản phẩm đích tổn thất lai đề cao công chúng đích thị dã. Thử ngoại, tha môn tương năng cú cải thiện dữ toàn cầu khách hộ đích hỗ động.
Here’s how I envisioned the flow of the project would go before I did any coding or anything like that. The user will interact with the website by entering a keyword. The website would then access the API once the user submits the search. Then the API endpoint will call the Python function, and the python script will input some JSON data to the S3 bucket so that it can be stored. This tool was created using a free resource calledZenUML,which allows you to make Sequence diagrams using code.
Giá thị ngã dự tưởng đích hạng mục lưu trình tương tại tiến hành nhậm hà biên mã hoặc loại tự thao tác chi tiền tiến hành đích phương thức. Dụng hộ tương thông quá thâu nhập quan kiện tự dữ võng trạm tiến hành giao hỗ. Dụng hộ đề giao sưu tác hậu, võng trạm tương phóng vấn API. Nhiên hậu, API đoan điểm tương điều dụng Python hàm sổ, tịnh thả python cước bổn hội tương nhất ta JSON sổ cư thâu nhập đáo S3 tồn trữ dũng trung, dĩ tiện khả dĩ tồn trữ tha môn. Cai công cụ thị sử dụng xưng viZenUMLĐích miễn phí tư nguyên sang kiến đích, cai tư nguyên khả nhượng nâm sử dụng đại mã chế tác tự liệt đồ.
Chế tác võng trạm mô hình(Making a Mockup of Website)
When deciding what I wanted the website to look like I had to ask myself what is the bare minimum that the website needs? Well I need to have a place for the user to search, a submit button to submit the search, and table to display the data. In addition to those three components I figured it would be important to have links to the code and blog posts, and in the future I would include a place for visualizations and a spot to showcase a video or GIF of me making the web app. The tool used to make this mockup is a free tool calledMoqups.
Tại quyết định ngã tưởng yếu võng trạm đích ngoại quan thời, ngã bất đắc bất vấn tự kỷ, võng trạm nhu yếu đích tối đê hạn độ thị đa thiếu? Hảo ba, ngã nhu yếu hữu nhất cá cung dụng hộ sưu tác đích địa phương, nhất cá đề giao án nữu dĩ đề giao sưu tác dĩ cập nhất cá biểu dĩ hiển kỳ sổ cư. Trừ liễu ngã nhận vi đích giá tam cá tổ kiện chi ngoại, cụ hữu chỉ hướng đại mã hòa bác khách văn chương đích liên tiếp dã ngận trọng yếu, tịnh thả tương lai, ngã tương bao quát nhất cá khả thị hóa đích địa phương hòa nhất cá triển kỳ ngã chế tác Web ứng dụng trình tự đích thị tần hoặc GIF đích vị trí. Dụng vu chế tác thử mô hình đích công cụ thị nhất cá xưng viMoqupsĐích miễn phí công cụ.
Chế tác võng trạm(Making the Website)
Now that I had an idea of what my site was going to look like I created two files, index.html and style.css. The index file will hold the content of the page including the javascript code while the style file will simply format the webpage.
Hiện tại, ngã dĩ kinh liễu giải liễu võng trạm đích ngoại quan, nhiên hậu sang kiến liễu lưỡng cá văn kiện index.html hòa style.css. Tác dẫn văn kiện tương bao hàm bao quát javascript đại mã tại nội đích hiệt diện nội dung, nhi dạng thức văn kiện tương cận đối võng hiệt tiến hành cách thức thiết trí.
<form id= "search-keyword" onsubmit= "return false" >
<input type= "text" name= "keywordSearch" id= "keyword" placeholder= "Enter your keyword here" >
<input type= "submit" onclick= "loadData();" id= "submit" >
</form>
This code in this <form> tag is the main foundation seeing that it allows the website to interact with Javascript. In short the user will enter the keyword in the search and once they click the submit button the Javascript code will be called to run the loadData() function.
Cai <form> tiêu ký trung đích giá đoạn đại mã thị chủ yếu đích cơ sở, tha sử võng trạm khả dĩ dữ Javascript tiến hành giao hỗ. Giản nhi ngôn chi, dụng hộ tương tại sưu tác trung thâu nhập quan kiện tự, nhất đán đan kích đề giao án nữu, tương điều dụng Javascript đại mã lai vận hành loadData() hàm sổ.
<script type= "text/javascript" >
const tweetData = document.querySelector( "#tweetData > tbody" );
function loadData() {
const base_url = "https://bsj0pwvapj.execute-api.us-east-1.amazonaws.com/prod/?keywordSearch=";
const userSearch = document.getElementById( "keyword" ).value;
const API_url = base_url + userSearch;
console.log(API_url);
const request = new XMLHttpRequest();
request.open('GET', API_url, true);
...
}
</script>
The const base_url takes the base API url which won’t return anything since it has a NULL value. This is where we extract the search that was submitted and append it to the base_url. To invoke the API_url you must do a request. In my case since I am using a GET method I have “request.open(‘GET’, API_URL, true)”, but if I wanted to do a POST method you would simply replace it with the GET.
const base_url thải dụng cơ bổn API võng chỉ, nhân vi tha cụ hữu NULL trị, nhân thử bất hội phản hồi nhậm hà nội dung. Giá thị ngã môn đề thủ đề giao đích sưu tác tịnh tương kỳ phụ gia đáo base_url đích địa phương. Yếu điều dụng API_url, nâm tất tu chấp hành nhất cá thỉnh cầu. Tựu ngã nhi ngôn, nhân vi ngã sử dụng đích thị GET phương pháp, sở dĩ ngã hữu “request.open('GET', API_URL, true)”, đãn thị như quả ngã tưởng chấp hành POST phương pháp, tắc chỉ nhu tương kỳ thế hoán vi GET.
<script type= "text/javascript>
...
const request = new XMLHttpRequest();
request.open('GET', API_url, true);
request.onload = function() {
const data = JSON.parse(this.response)
for (var i in data) {
var row = ` <tr>
<td>${data[i].user_name}</td>
<td>${data[i].date_created}</td>
<td>${data[i].tweet_text}</td>
<td>${data[i].retweet_count}</td>
<td>${data[i].favorite_count}</td>
<td>${data[i].sentiment}</>
</tr>`
const table = document.getElementById('tdata')
table.innerHTML += row
}
};
request.send();
}
</script>
To wrap up the Javascript code I have to parse the JSON data that is taken from API endpoint, and this is done so within the data const. Now it’s just a matter of iterating through the parsed response by using a for loop and populating the database. After each iteration the “table.innerHTML += row” ensures that the data is added to the table before it begins iterating the next JSON object.
Yếu bao trang Javascript đại mã, ngã tất tu giải tích tòng API đoan điểm hoạch thủ đích JSON sổ cư, giá thị tại sổ cư const trung hoàn thành đích. Hiện tại, chỉ nhu sử dụng for tuần hoàn tịnh điền sung sổ cư khố lai biến lịch giải tích đích hưởng ứng tức khả. Mỗi thứ điệt đại hậu, “table.innerHTML + = hành” xác bảo tại khai thủy điệt đại hạ nhất cá JSON đối tượng chi tiền tương sổ cư thiêm gia đáo biểu trung.
Kết thúc ngữ(Closing Remarks)
I hope you enjoyed my blog post. I am Jose Martinez, recent UMD Graduate (Dec’19) looking to start my career in Data Analytics. If you’d like to check out some more of my work feel free to checkout myGithub Websitewith my resume, Github projects, and the code from this Blog. This is my first blog post so it would be great if you’d leave a comment with some feedback, fill out thisContact formor reach out to me onTwitterorLinkedIn.Stay tuned for my next blog post where I’ll dive into setting up the AWS Lambda script, connecting to the Twitter API, and much more.
Hi vọng nâm hỉ hoan ngã đích bác khách văn chương. Ngã thị UMD nghiên cứu sinh (19 niên 12 nguyệt ) đích Jose Martinez, tha hi vọng khai thủy ngã tại sổ cư phân tích phương diện đích chức nghiệp. Như quả nâm tưởng tra khán ngã đích canh đa tác phẩm, thỉnh tùy thời sử dụng ngã đích giản lịch, Github hạng mục dĩ cập thử Blog trung đích đại mã lai tra khán ngã đíchGithub võng trạm.Giá thị ngã đích đệ nhất thiên bác văn, như quả nâm tưởng phát biểu bình luận tịnh đề cung nhất ta phản quỹ, điền tả thửLiên hệ biểuHoặc tạiTwitterHoặcLinkedInThượng dữ ngãLiên hệ,Na tương thị ngận bổng đích. Thỉnh kế tục quan chú ngã đích hạ nhất thiên bác khách văn chương, tại cai văn chương trung, ngã tương thâm nhập tham thảo như hà thiết trí AWS Lambda cước bổn, liên tiếp đáo Twitter API đẳng.
Nguyên đại mã(Source Code)
Phiên dịch tự:https://medium.com/analytics-vidhya/conduct-sentiment-analysis-using-tweets-serverless-a708dab87293
Bình quả thôi tống phục vụ khí thôi tống diên trì