【发布时间】:2017-10-03 06:52:10
【问题描述】:
我正在尝试制作一个应用程序来帮助我提取用户的帖子,甚至使用 Facebook 登录 API 提取他们的电子邮件。我尝试了以下方法,但无法纠正我可以从哪里提取文本帖子并将其用于我的 NLP 实验目的。
见以下代码:
<body id="page-top" data-spy="scroll" data-target=".navbar-fixed-top">
<!-- Facebook Login Function -->
<div id="fb-root"></div>
<script>(function(d, s, id) {
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s); js.id = id;
js.src = "//connect.facebook.net/en_US/sdk.js#xfbml=1&version=v2.10&appId=APP-ID";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
function checkLoginState() {
FB.getLoginStatus(function(response) {
statusChangeCallback(response);
});
FB.getLoginStatus(function(response) {
if (response.status === 'connected') {
console.log(response.authResponse.accessToken);
}
FB.api('/me', function(response) {
console.log(JSON.stringify(response));
});
});
}
</script>
<div class="fb-login-button" data-max-rows="1" data-size="large" data-button-type="continue_with" data-show-faces="false" data-auto-logout-link="false" data-use-continue-as="true"></div>
我只是想将帖子传递给我可以进一步移动并使 NLP 流程为其工作的函数。
这是作为 NLP 过程工作的函数:
<script>
//Validation for Paste Text field
function validate()
{
console.log( "Inside validate");
//return false;
var obj1 = document.getElementById('for_analysis').value;
console.log("Pring value of text area")
console.log( obj1);
if(obj1.trim() == '')
{
console.log( "Empty space found");
alert("Please Enter some Text before submitting");
//obj1.focus();
return false;
}
else{
console.log( "No empty space found");
$(".trial").show();
//document.getElementById("chkjq").className = "chkjq";
return true;
}
}
//paste this code under head tag or in a seperate js file.
// Wait for window load
$(document).ready(function(){
console.log( "inside jquery");
$(window).on('load',function() {
// Animate loader off screen
console.log( "Page Loading");
//$(".se-pre-con").fadeOut("slow");;
//$(".trial").fadeOut("slow");;
//$("#download").remove();
});
$(".chkjq").click(function(){
//console.log( "Hello, world!");
//$(".trial").show();
});
$("#filebutton").click(function(){
//console.log( "Hello, world! file button");
$(".trial").show();
});
});
</script>
上述函数应用于一个文本区域,我从中获取文本并对其进行处理。 :
<form action ="/analyze/" method="POST" name ="sendtext" id="sendtext" onsubmit="javascript:return validate()" >
{% csrf_token %}
<textarea id ="for_analysis" name ="for_analysis" form="sendtext" style="background-color: lightgrey"></textarea>
<!-- <input id="for_analysis" type="textarea" name="for_analysis" > -->
<br/>
<button type="submit" class="box__button chkjq" id = "chkjq">UPLOAD</button>
<!--<button id="ana_text">Analyze</button> -->
<br/></form>
现在我想通过从 FB 中提取文本帖子来执行相同的操作。请让我知道我能做些什么来使它正确?
【问题讨论】:
-
到底是什么问题?老实说,我不确定你的问题是什么。如果你想从 facebook 中提取文本,只需使用 api 来获取帖子。你被困在哪里了?
-
我被困在 API 的使用中......正如你在上面的代码中看到的那样,我试图让应用程序工作,但看不到我必须做什么来提取文本和配合NLP
validate()的功能使用,这样我就可以处理帖子了。 -
我只看到一个对 /me 的 api 调用,它只会返回基本的用户信息。此外,您的登录按钮中没有登录回调,并且您正在使用 FB.getLoginStatus 2 次 - 您应该只在页面加载时使用它,使用异步回调......那里缺少很多东西,你应该点击文档并查看 js sdk 的基本实现。
-
这也许对你也有帮助,阅读全文:devils-heaven.com/facebook-javascript-sdk-login
-
是的,您的链接很有帮助...我已经检查过了。但问题又是我无法理解如何提取帖子?
标签: javascript html facebook facebook-graph-api facebook-javascript-sdk