Grattage des données de facebook à l'aide de scrapy

Le nouveau graphe de recherche sur facebook vous permet de rechercher pour les employés actuels de l'entreprise à l'aide de la requête de jeton Actuelle, les employés de Google (par exemple).

Je veux gratter la page de résultats (http://www.facebook.com/search/104958162837/employees/present) par scrapy.

Problème Initial était de facebook ne permet qu'un facebook de l'utilisateur pour accéder à l'information, donc, m'intimant de login.php. Donc, avant de racler cette url, je me suis connecté via scrapy et puis, cette page de résultat. Mais même si la réponse http 200 pour cette page, il n'a pas de restes de toutes les données. Le code est comme suit:

import sys
from scrapy.spider import BaseSpider
from scrapy.http import FormRequest
from scrapy.selector import HtmlXPathSelector
from scrapy.contrib.spiders import CrawlSpider, Rule
from scrapy.contrib.linkextractors.sgml import SgmlLinkExtractor
from scrapy.selector import HtmlXPathSelector
from scrapy.item import Item
from scrapy.http import Request

class DmozSpider(BaseSpider):
    name = "test"
    start_urls = ['https://www.facebook.com/login.php'];
    task_urls = [query]

def parse(self, response):
return [FormRequest.from_response(response, formname='login_form',formdata={'email':'myemailid','pass':'myfbpassword'}, callback=self.after_login)]

def after_login(self,response):
    if "authentication failed" in response.body:
            self.log("Login failed",level=log.ERROR)
            return
    return Request(query, callback=self.page_parse)

def page_parse(self,response):

    hxs = HtmlXPathSelector(response)
    print hxs
    items = hxs.select('//div[@class="_4_yl"]')
    count = 0
    print items

Qu'aurais-je pu raté ou mal?

OriginalL'auteur Aryabhatt | 2013-05-31