About

This file can be uploaded to your web-server and you can navigate to the script. It will grab all the emojis from facebook and dump them. It can be used as testing to check whether all emojis can be grabbed along with their coordinates on the image atlas.

Code

fbemoticondump.php
<?php
###########################################################################
##  Copyright (C) Wizardry and Steamworks 2013 - License: GNU GPLv3      ##
##  Please see: http://www.gnu.org/licenses/gpl.html for legal details,  ##
##  rights of fair usage, the disclaimer and warranty conditions.        ##
###########################################################################
#switch to utf
header('Content-Type: text/html; charset=utf-8');
 
?>
 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
   "http://www.w3.org/TR/html4/strict.dtd">
<HTML>
  <HEAD>
    <!-- outdated at 17 July 2014
      <LINK href="http://fbstatic-a.akamaihd.net/rsrc.php/v2/y9/r/WYHai22TLa6.css" rel="stylesheet" type="text/css">
    -->
    <LINK href="https://fbstatic-a.akamaihd.net/rsrc.php/v2/yi/r/WMuVGB-mLHH.css" rel="stylesheet" type="text/css">
  </HEAD>
  <BODY>
<?php
 
#colin.mollenhour.com
function json_decode_nice($json, $assoc = FALSE){ 
  $json = str_replace(array("\n","\r"),"",$json); 
  $json = preg_replace('/([{,]+)(\s*)([^"]+?)\s*:/','$1"$3":',$json); 
  return json_decode($json,$assoc); 
}
 
#Bit Repository
function text_extract($string, $start, $end) {
  $pos = stripos($string, $start);
  $str = substr($string, $pos);
  $str_two = substr($str, strlen($start));
  $second_pos = stripos($str_two, $end);
  $str_three = substr($str_two, 0, $second_pos);
  $unit = trim($str_three); // remove whitespaces
  return $unit;
}
 
## extract JSON UTF emoticons
# outdated at 17 July 2014
#$facebook_javascript=file_get_contents("http://fbstatic-a.akamaihd.net/rsrc.php/v2/yu/r/ikBZ96hTyHA.js");
$facebook_javascript=file_get_contents("https://fbstatic-a.akamaihd.net/rsrc.php/v2/yC/r/0UjQTVL4zOk.js");
# outdated at 17 July 2014
#$j='{'.text_extract($facebook_javascript, ",j={", "}").'}';
$j='{'.text_extract($facebook_javascript, "\"),j={", "}").'}';
 
#print $j;
#return;
 
## get CSS
# outdated at 17 July 2014
#$facebook_css=file_get_contents("http://fbstatic-a.akamaihd.net/rsrc.php/v2/y9/r/WYHai22TLa6.css");
$facebook_css=file_get_contents("https://fbstatic-a.akamaihd.net/rsrc.php/v2/yi/r/WMuVGB-mLHH.css");
 
$emoji = json_decode_nice($j, true);
 
#show
while($class = current($emoji)) {
  preg_match('/'.$class.'.+?(-){0,1}([0-9]{1,3})(px){0,1} (-){0,1}([0-9]{1,3})(px){0,1}}/', $facebook_css, $matches);
  print $class." ".key($emoji)." ".html_entity_decode("&#".key($emoji).';')." ".'<span class="_1az _1a- '.$class.'"></span>'." ".$matches[2].",".$matches[5].",".($matches[2]+16).",".($matches[5]+16)."</br>";
  next($emoji);
}
 
$j='{'.text_extract($facebook_javascript, "emotes:{", "}").'}';
$emoji = json_decode_nice($j, true);
while($emote = current($emoji)) {
  preg_match('/'.$emote.'.+?(-){0,1}([0-9]{1,3})(px){0,1} (-){0,1}([0-9]{1,3})(px){0,1}}/', $facebook_css, $matches);
  print $emote." ".key($emoji)." ".key($emoji)." ".'<span class="emoticon emoticon_'.$emote.'"></span>'." ".$matches[2].",".$matches[5].",".($matches[2]+16).",".($matches[5]+16)."</br>";
  next($emoji);
}
 
?>
  </BODY>
</HTML>

facebook/image_atlases/dump.txt ยท Last modified: 2022/04/19 08:28 by 127.0.0.1

Access website using Tor Access website using i2p Wizardry and Steamworks PGP Key


For the contact, copyright, license, warranty and privacy terms for the usage of this website please see the contact, license, privacy, copyright.