Mint.com gibi Multi-Sitesi web Doğrulama

2 Cevap php

Nasıl bir diğer sitelerden içine giriş ve veri toplamak olacak bir site oluşturma hakkında gitmek istiyorum. Örneğin, nasıl mint.com girdi tüm online banka bilgilerini size sağlar ve Darphane içinde görüntüleme için veri toplar.

Birisi bazı anahtar kelimeler veya herhangi bir komut ile yönde bana gelin olsaydı, çok duyacağız.

2 Cevap

Bu gerçekten yapmak isteyen ne bağlıdır. Örneğin, Mint.com güçlendirir, ya da, zaman içinde bir noktada Yodlee adlı bir şirketin bir SDK yaptı. Bu SDK / Kütüphane Mint.com 'nin müşterileri adına veri elde etmek için bir ekran kazıma teknolojisini kullanır.

Genel olarak aka kazıma, site erişimi ve ayrıştırma otomatikleştirmek gerekir. 1) kimlik 2) kazıma ne olursa olsun genellikle size ulaşmak için çalışıyoruz ne olduğunu belirlemek ise yakından HTML incelemek için sizi gerektirir: dışarı izlemek için iki zor alanlar genellikle vardır.

Ben (kesinlikle iyileştirme kullanabilirsiniz akılda tutmak, ancak gidiyorsun alabilirsiniz) bir örnek olarak buradan kontrol edebileceği bir süre önce Apple'ın yenilenmiş mağaza arar sıyrıklar ve basit bir yakut app yazdı:

http://grapple.xorcyst.com

I've written similar stuff to grab data from my bank accounts (I'm not too keen on giving mint my credentials) using mechanize and hpricot, as well as job sites, used car dealerships etc, so it's flexible if you want to put in the effort.

Bunu yapmak için yararlı bir şey, ancak herhangi bir kullanım politikaları ve benzeri ihlal için dikkatli olmak gerekir.

İşte ne kadar basit göstermek için iş ilanları çekimden başka hızlı bir örnek

#!/usr/bin/ruby

require 'rubygems'
require 'mechanize'
require 'hpricot'
require 'open-uri'

url = "http://tbe.taleo.net/NA2/ats/careers/jobSearch.jsp?org=DIGITALGLOBE&cws=1"
site = WWW::Mechanize.new { |agent| agent.user_agent_alias = 'Mac Safari' }
page = site.get(url)

search_form = page.form("TBE_theForm")
search_form.org = "DIGITALGLOBE"
search_form.cws = "1"
search_form.act = "search"
search_form.WebPage = "JSRCH"
search_form.WebVersion = "0"
search_form.add_field!('location','1') #5
search_form.add_field!('updatedWithin','2')

search_results = site.submit(search_form)
doc = Hpricot(search_results.body)

puts "<b>DigitalGlobe (Longmont)</b>"

doc.search("//a").each do |a|
  if a.to_s.rindex('rid=') != nil
    puts a.to_s.gsub('"','')
  end
end