• Stars
    star
    108
  • Rank 319,443 (Top 7 %)
  • Language
    PHP
  • Created over 14 years ago
  • Updated over 14 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A PHP module that incorporates all known APIs that map an email address to user information
FindByEmail.php
~~~~~~~~~~~~~~~

*Before using this module, you must add your own keys to config.php!*

You can give this a try for yourself at http://web.mailana.com/labs/findbyemail/

This module looks up user information from various public sources based on the 
supplied email address. It queries the following services:

WebFinger
Gravatar
Yahoo
43things
Vimeo
Amazon
Brightkite
AIM
Friendfeed
Google Social Graph
Rapleaf
DandyID
IntenseDebate
Jigsaw
MySpace 

The main entry point is the find_by_email() function. This calls the various services
that offer a mapping between an email address and user information, and returns an
array containing all the information found.

The result is an associative array, with a string representing the service's name
pointing to an array of user information for each service. The user information is
itself an associative array, consisting of the following information, with each
item possibly an empty string if the service doesn't supply it:

 user_id: A numerical value identifying the user on the service
 user_name: A human-readable identifier for the user, eg "petewarden"
 display_name: The full name of the user, eg "Pete Warden"
 portrait_url: A URL pointing to a photo of the user on the service
 location: An unnormalized location string from the service, eg "Boulder, CO"

Some services like Rapleaf, Friendfeed and DandyID return information on multiple
other services for a user. These appear in the results, but are overwritten if the
services themselves return information first.

I've also included an example of a simple API provider, with a version hosted at
http://web.mailana.com/labs/findbyemail/api.php
To use it, just pass in the email address as a parameter, and you'll get JSON back:
http://web.mailana.com/labs/findbyemail/api.php?email=pete%40petewarden.com

To parse hCard pages for WebFinger, it uses the hKit project:
http://code.google.com/p/hkit/
That is licensed under the LGPL. You may also need the DOM/XML module for PHP:
http://www.php.net/manual/en/dom.setup.php

Otherwise the code is icensed under the 2-clause (eg no advertising requirement) BSD
license, making it easy to reuse for commercial or GPL projects:
 
 (c) Pete Warden <[email protected]> http://petewarden.typepad.com/ Jan 8th 2010
 
 Redistribution and use in source and binary forms, with or without modification, are
 permitted provided that the following conditions are met:

   1. Redistributions of source code must retain the above copyright notice, this 
      list of conditions and the following disclaimer.
   2. Redistributions in binary form must reproduce the above copyright notice, this 
      list of conditions and the following disclaimer in the documentation and/or 
      other materials provided with the distribution.
   3. The name of the author may not be used to endorse or promote products derived 
      from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES,
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 
WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
OF SUCH DAMAGE.

More Repositories

1

dstk

A collection of the best open data sets and open-source tools for data science
Ruby
1,125
star
2

iPhoneTracker

Objective-C
1,029
star
3

c_hashmap

A simple string hashmap in C
C
521
star
4

spchcat

Speech recognition tool to convert audio to text transcripts, for Linux and Raspberry Pi.
C
424
star
5

open-speech-recording

Web application to record speech for an open data set
HTML
417
star
6

ParallelCurl

A PHP class providing an easy interface for running multiple concurrent CURL requests
PHP
379
star
7

dstkdata

The (large) data files needed for the Data Science Toolkit project
221
star
8

geodict

A simple Python library/tool for pulling location information from unstructured text
Python
184
star
9

openheatmap

A web renderer for geographic heat maps, using OpenStreetMap compatible file formats
C
102
star
10

extract_loudest_section

Trims .wav audio files to the loudest section of a given length
C++
94
star
11

buzzprofilecrawl

A simple script to crawl Google Profile pages and extract their information as structured data
PHP
90
star
12

tensorflow_makefile

C++
70
star
13

catdoc

Command-line utility for converting Microsoft Word documents to text
C
69
star
14

stm32_bare_lib

Simple examples and utilities for the STM32 "Blue Pill"
C
59
star
15

picoproto

Abominably Tiny Protobuf File Parser in C++
C++
54
star
16

ble_file_transfer

Example of transferring file data over BLE using an Arduino Nano Sense and WebBLE
C++
47
star
17

crunchcrawl

A project to gather, analyze and visualized the data in Crunchbase
PHP
46
star
18

salesforce_restphp_example

A minimal example showing how to handle the OAuth login process and make API calls using the Salesforce REST interface in PHP
PHP
42
star
19

pyparallelcurl

A simple Python class for running multiple URL fetches in parallel
Python
40
star
20

handmadeimap

An implementation of IMAP and POP3 in PHP using raw sockets rather than the php-imap extension
PHP
39
star
21

common_crawl_types

A simple Ruby example of how to process Common Crawl files using Elastic MapReduce
Ruby
30
star
22

pagerankgraph

Visualizes search engine ranking algorithms for a given domain
PHP
30
star
23

magic_wand

Magic Wand example for TensorFlow Lite Micro
Jupyter Notebook
28
star
24

genderfromname

A PHP port of the Perl Text::GenderFromName module
PHP
23
star
25

openwordcloud

Renders word clouds using HTML5's Canvas element
JavaScript
21
star
26

tensorflow_ios

C++
21
star
27

linkedinoauthexample

A minimal example showing how to handle the OAuth login process for LinkedIn using PHP
PHP
19
star
28

MLloWorld

Shows how to write a simple data contest entry for Kaggle, using scikit-learn for machine learning algorithms
Python
18
star
29

geoip_example

A simple example showing how to use the GeoIP API in PHP with the free database from http://maxmind.com
PHP
15
star
30

boilerpipe

A branch of the boilerpipe project
Java
15
star
31

arduino_nano_ble_write_flash

An example of modifying flash memory on the Arduino Nano BLE Sense 33 from a sketch, using Mbed.
C++
13
star
32

postgis2gmap

A small collection of PL/PGSQL functions for converting to and from Google's map tile coordinates
13
star
33

delicious_tags

A demonstration showing how to use the Delicious API to retrieve the top tags for a URL
PHP
12
star
34

simpledb_loader

A Java project exploring the fastest way to upload data to Amazon's SimpleDB
Java
10
star
35

hellosocialworld

A minimal but complete example of a site relying on authentication and sharing through Twitter and Facebook
Ruby
9
star
36

cruftstripper

Pulls strings that statistically look like valid sentences from unstructured text
Python
8
star
37

GeocodeFile

A PHP script to turn a file of addresses into latitude, longitude coordinates
PHP
8
star
38

cc2text

An example job that converts Common Crawl archived web pages into text
Ruby
7
star
39

memory_planner

Prototype for a memory planner for TensorFlow Lite Micro
C++
6
star
40

ml_memory_analyser

Runtime memory usage analysis utilities for ML models
Python
6
star
41

tf_ios_makefile_example

A simple iOS example showing how to use the iOS library produced by TensorFlow's makefile.
Objective-C++
6
star
42

twitteroauthexample

An example of how to implement the UI workflow for Twitter's oAuth process in PHP
PHP
6
star
43

flxjs

A javascript library emulating the Flex 3 Matrix, Point and Rectangle classes
JavaScript
6
star
44

schoolcrawl

Crawls the value-added school effectiveness data from the LA Times website
PHP
5
star
45

copyoptimizer

An example of using KissMetrics to measure and optimize your landing page copy
JavaScript
5
star
46

cuda-convnet

Python
4
star
47

stt_standalone_client

Copy of the example program from Coqui's open-source library with just the files needed to compile against a binary release.
C++
4
star
48

osm2pgsql

A fork of the importer for OpenStreetMap format files in PostGIS
C
4
star
49

invite_example

Sample code for the InvitesDoneRight service
PHP
4
star
50

stitchingbug

A demonstration of a polygon stitching problem with the HTML5 Canvas element
JavaScript
3
star
51

magic_wand_digit_data

Digit gesture training data for the Arduino BLE Nano Sense magic wand
3
star
52

pico_colabs

Colab notebooks for building Raspberry Pi Pico examples on the web
Jupyter Notebook
3
star
53

minimalprofiler

A super-simple profiler for Ruby
Ruby
3
star
54

geocodetest

Measures the quality of address to coordinate results across multiple services
Ruby
3
star
55

parec

Standalone version of the Pulse Audio pacat example
C
2
star
56

datathon

Support code for the ASA Datathon
Python
2
star
57

magic_wand_capture

C++
2
star
58

v4l2_opengl

Minimal example of using Video for Linux 2 together with OpenGL to display a live camera feed
C
2
star
59

pico_multicore_coherence_test

Minimal repro example for a memory coherence problem I encountered when running on the RP2040's dual cores
C
2
star
60

petesplugins

My old open-source video effects
2
star
61

cliargs_py

A utility module to make handling command line arguments in Python easier
Python
2
star
62

mbed-hello-world

Starter program for the mbed IDE for ARM M-class microcontrollers
C++
2
star
63

sinatraperftoolsexample

A minimal example of how to use Perftools in Sinatra
Ruby
2
star
64

cliargs

Easily get command-line arguments for PHP scripts, with error-checking and built-in usage help
2
star
65

tensorflow_apq8009

C++
1
star
66

invitesdoneright

1
star
67

BitBrain_C_Code

GitHub version of BitBrain code repository
C
1
star
68

bookiewatcher

Ruby script for analyzing the voting patterns on the bookie poll
Ruby
1
star
69

person_sensor_blues_web

Web frontend for the Blues/Person Sensor integration
Python
1
star
70

streaming_speech_metrics

Python library for analyzing the latency and accuracy of streaming speech to text systems
Python
1
star