Java pobieranie źródła facebooka

0

Witam, jestem dość początkującym programistą, pisze program, który ma przeszukać tablicę jakiegoś użytkownika facebook'a. Jest to projekt zaliczeniowy na studia. Niestety mój kod nie pobiera całego źródła, przetestowałem to, napisałem coś u siebie na tablicy następnie pobrałem kod i nie znalazło tego wpisu. Mógłby ktoś jakoś pomóc co robię źle albo jak obejść to "zabezpieczenie" facebook'a?
Z góry dzięki za pomoc, pozdrawiam ;)

Mój kodzik do pobierania kodu źródła strony wygląda tak:

  public static void main(String[] args) {
      
    String urltext = "https://www.facebook.com/IDuzytkownika/";
    BufferedReader in = null;
    try 
    {
      URL url = new URL(urltext);
      in = new BufferedReader(new InputStreamReader(url.openStream()));

      String inputLine;
      while ((inputLine = in.readLine()) != null) 
      {
        System.out.println(inputLine);
      }
    } catch (Exception e) 
    {
      e.printStackTrace();
    } finally 
    {
      if (in != null) 
      {
        try {
          in.close();
        } catch (IOException e) 
        {
          e.printStackTrace();
        }
      }
    }
  }
0

Jeśli jego posty są dostępne tylko dla znajomych, to z oczywistych względów musiałbyś się zalogować swoją aplikacją.
Facebook robi dużo requestów asynchronicznych do pobierania postów, musiałbyś takie same requesty robić, żeby wyświetlić wszystkie posty.

0

Witam, dzięki za podpowiedzi nie chce nowego tematu zakładać więc zapytam jeszcze tu. Do tego projektu na studia potrzebuje listę id'ów wszystkich polaków z facebooka. Wiem, że niestety fb nie udostępnia takiej listy.
Ale czy jest jakiś sposób żeby taką listę mieć ?
Wpadłem na pomysł żeby napisać program który poprzez http://graph.facebook.com/id sprawdzał by wszystkie możliwe id'ki w pętli for np id od 1 do 10^13 pobierałby zmienną locale z json'a z tej strony i jeżeli jest to polak zapisywałby to. Pytanie tylko ile trwałoby takie pobieranie całej listy i czy nie za długo ;p No i druga sprawa, że nie do końca wiem jak by pobrać zmienną locale.
A może wy znacie jakiś lepszy sposób? Z góry dzięki za pomoc :)

0

Pytanie tylko ile trwałoby takie pobieranie całej listy i czy nie za długo

1013 powiadasz? Sprawdźmy:
1013*300/1000/60/60/24/365 = ~95000 lat
300 -> u mnie tyle mniej-więcej zajmuje pobranie tej strony w milisekundach (ale od dłuższego czasu nieco on przycina, więc zawsze możesz sprawdzić u siebie i podstawić do wzoru)
Dalej mamy zamianę na sekundy (dzielenie przez 1000), minuty, godziny, dni i lata.
... czyli... cóż - całkiem sporo. Możliwe, że gdzieś się walnąłem w obliczeniach, dlatego prosiłbym o sprawdzenie :P

0

Hehe nie liczyłem, że ktoś policzy w zasadzie wiedziałem pisząc, że ta metoda nie ma sensu bo będzie szukać wiecznie dlatego pytałem czy zna ktoś jakiś sposób.
Wracając do tej metody oczywiście można by zawęzić obszar poszukiwań i to sporo ale to i tak by trwało długo ;< Wiadomo nie chodzi żeby by znaleźć wszystkich polaków, ale większość.
Patrząc na swoich znajomych to najkrótszy kod jaki mają jest 9 cyfrowy, a najdłuższy 15 cyfrowy. Może ma ktoś jakiś pomysł?

0

Sprawdzaj pierw co milionową osobę, później co sto tysięczną, następnie co dziesięciotysięczną, tysięczną, pięćsetną, dwusetną, setną, pięćdziesiątą..
będziesz być może miał pewien wykres rozkładu polaków w facebooku po ID, wtedy będziesz mógł wybrać przestrzeń w której jest więcej szansy na znalezienie większej ilości polaków.

0

Trochę lipa nic będę myślał dalej może ktoś w między czasie na coś tez wpadnie i się podzieli pomysłem ;p

1 użytkowników online, w tym zalogowanych: 0, gości: 1