Webroboter a la ct
Ruby und mechanics
Install ruby mit gems und mechanics:
http://rubyinstaller.org, ruby dem Path hinzufügen lassen,
prüfen mit ruby -v
gem install mechanize
Softlink: www.ct.de/1004128
###MyGoogleSearch.rb###
require 'rubygems'
require 'mechanize'
agent = WWW::Mechanize.new
puts ".........Mapsergebnisse................"
agent.page.forms.first.as_q = 'pfandleihhaus'
agent.page.forms.first.submit
Maps_links = agent.page.search('h4[@class="r"]/a[@class="l"]')
#links.each{|link| puts "#{link.text} (#{link['href']})"}
Maps_links.each_with_index{|link, index| puts "#{index+1} #{link.text} (#{link['href']})"}
####MyGoogleSearch2.rb####
require 'rubygems'
require 'mechanize'
suchbegriff= "leihhaus berlin"
agent = WWW::Mechanize.new
puts "\n"+suchbegriff
#puts ".........Mapsergebnisse pfandleihhaus................"
agent.page.forms.first.as_q = suchbegriff
agent.page.forms.first.submit
Maps_links = agent.page.search('h4[@class="r"]/a[@class="l"]')
#links.each{|link| puts "#{link.text} (#{link['href']})"}
Maps_links.each_with_index{|link, index|
if link.text.index('Exchange') then
puts "Position #{index+1} #{link.text} (#{link['href']})"
exit
else
#puts "#{index+1} #{link.text} (#{link['href']})"
end
}
#puts ".........Suchergebnisse pfandleihhaus................"
agent.get('http://www.google.de/search?hl=de', {"num"=>"100","start"=>"0", "q"=>suchbegriff})
links = agent.page.search('h3[@class="r"]/a[@class="l"]')
links.each_with_index{|link, index|
if link.text.index('Exchange') then
puts "Position #{index+1+Maps_links.length} #{link.text} (#{link['href']})"
exit
else
#puts "Position #{index+1}: #{link.text} (#{link['href']})"
end
}
#puts ".........Suchergebnisse pfandleihhaus................"
agent.get('http://www.google.de/search?hl=de', {"num"=>"100","start"=>"100", "q"=>suchbegriff})
links = agent.page.search('h3[@class="r"]/a[@class="l"]')
links.each_with_index{|link, index|
if link.text.index('Exchange') then
puts "Position #{index+1+Maps_links.length+100} #{link.text} (#{link['href']})"
exit
#break
else
#puts "#{index+1} #{link.text} (#{link['href']})"
end
}
###MyGoogleSearch1.rb####
require 'rubygems'
require 'mechanize'
agent = WWW::Mechanize.new
suchbegriffe = [
'pfandleihhaus', 'pfandhaus', 'leihhaus', 'pfandkredit',
"pfandleihhaus berlin", "pfandhaus berlin", "leihhaus berlin", "pfandkredit berlin",
'geldwechsel', 'wechselstube', "money gramm",
"geldwechsel berlin", "wechselstube berlin", "money gramm berlin",
'goldverkauf', 'goldankauf', 'goldmuenzen', 'kruegerrand',
"goldverkauf berlin", "goldankauf berlin", "goldmuenzen berlin",
"usd wechselkurs", 'wechselkurse']
suchbegriffe.each do |suchbegriff|
found=false
puts "\n"+suchbegriff
#puts ".........Mapsergebnisse pfandleihhaus................"
agent.page.forms.first.as_q = suchbegriff
agent.page.forms.first.submit
res = agent.page.search('h4[@class="r"]/a[@class="l"]')
#links.each{|link| puts "#{link.text} (#{link['href']})"}
res.each_with_index{|link, index|
if link.text.index('Exchange AG') then
puts "Position #{index+1} #{link.text} (#{link['href']})"
found=true
break
else
#puts "#{index+1} #{link.text} (#{link['href']})"
end
}
if !found then
#puts ".........Suchergebnisse pfandleihhaus................"
agent.get('http://www.google.de/search?hl=de', {"num"=>"100","start"=>"0", "q"=>suchbegriff})
links = agent.page.search('h3[@class="r"]/a[@class="l"]')
links.each_with_index{|link, index|
if link.text.index('Exchange AG') then
puts "Position #{index+1+res.length} #{link.text} (#{link['href']})"
found=true
break
else
#puts "Position #{index+1}: #{link.text} (#{link['href']})"
end
}
end
if !found then
#puts ".........Suchergebnisse pfandleihhaus................"
agent.get('http://www.google.de/search?hl=de', {"num"=>"100","start"=>"100", "q"=>suchbegriff})
links = agent.page.search('h3[@class="r"]/a[@class="l"]')
links.each_with_index{|link, index|
if link.text.index('Exchange AG') then
puts "Position #{index+1+res.length+100} #{link.text} (#{link['href']})"
found=true
break
#break
else
#puts "#{index+1} #{link.text} (#{link['href']})"
end
}
end
if !found then
#puts ".........Suchergebnisse pfandleihhaus................"
agent.get('http://www.google.de/search?hl=de', {"num"=>"100","start"=>"200", "q"=>suchbegriff})
links = agent.page.search('h3[@class="r"]/a[@class="l"]')
links.each_with_index{|link, index|
if link.text.index('Exchange AG') then
puts "Position #{index+1+res.length+200} #{link.text} (#{link['href']})"
found=true
break
#break
else
#puts "#{index+1} #{link.text} (#{link['href']})"
end
}
end
if !found then puts "Nicht unter den ersten 300 Ergebnissen" end
end
SEO - Googlesuche mit Eintrag in Text & Tabellen Formular
require 'rubygems'
require 'mechanize'
agent = WWW::Mechanize.new
time = Time.new
puts time.strftime("%Y-%m-%d %H:%M:%S")
suchbegriffe = [
'pfandhaus',
'pfandleihe',
'leihhaus',
"leihhaus berlin",
'Pfandkredit',
"Bargeld sofort",
"pfandleihhaus berlin",
'goldankauf',
'Zahngold',
'Goldmuenzen',
'schmuckankauf',
"Ankauf hochwertiger Uhren",
'Juwelier',
"Juwelier Berlin",
'geldwechsel',
'wechselstube',
"Travelers Cheques"]
ergebnisse = {
'pfandhaus'=>0,
'pfandleihe'=>0,
'leihhaus'=>0,
"leihhaus berlin"=>0,
'Pfandkredit'=>0,
"Bargeld sofort"=>0,
"pfandleihhaus berlin"=>0,
'goldankauf'=>0,
'Zahngold'=>0,
'Goldmuenzen'=>0,
'schmuckankauf'=>0,
"Ankauf hochwertiger Uhren"=>0,
'Juwelier'=>0,
"Juwelier Berlin"=>0,
'geldwechsel'=>0,
'wechselstube'=>0,
"Travelers Cheques"=>0 }
suchbegriffe.each do |suchbegriff|
found=false
puts "\n"+suchbegriff
#puts ".........Mapsergebnisse pfandleihhaus................"
agent.get('http://www.google.de/advanced_search?hl=de&num=100&start=0')
agent.page.forms.first.as_q = suchbegriff
agent.page.forms.first.submit
res = agent.page.search('h4[@class="r"]/a[@class="l"]')
#links.each{|link| puts "#{link.text} (#{link['href']})"}
res.each_with_index{|link, index|
if link.text.index('Exchange AG') then
puts "Position #{index+1} #{link.text} (#{link['href']})"
found=true
ergebnisse[suchbegriff]=index+1
break
else
#puts "#{index+1} #{link.text} (#{link['href']})"
end
}
if !found then
#puts ".........Suchergebnisse pfandleihhaus................"
agent.get('http://www.google.de/search?hl=de', {"num"=>"100","start"=>"0", "q"=>suchbegriff})
links = agent.page.search('h3[@class="r"]/a[@class="l"]')
links.each_with_index{|link, index|
if link.text.index('Exchange AG') then
puts "Position #{index+1+res.length} #{link.text} (#{link['href']})"
found=true
ergebnisse[suchbegriff]=index+1+res.length
break
else
#puts "Position #{index+1}: #{link.text} (#{link['href']})"
end
}
end
if !found then
#puts ".........Suchergebnisse pfandleihhaus................"
agent.get('http://www.google.de/search?hl=de', {"num"=>"100","start"=>"100", "q"=>suchbegriff})
links = agent.page.search('h3[@class="r"]/a[@class="l"]')
links.each_with_index{|link, index|
if link.text.index('Exchange AG') then
puts "Position #{index+1+res.length+100} #{link.text} (#{link['href']})"
found=true
ergebnisse[suchbegriff]=index+1+res.length+100
break
#break
else
#puts "#{index+1} #{link.text} (#{link['href']})"
end
}
end
if !found then
#puts ".........Suchergebnisse pfandleihhaus................"
agent.get('http://www.google.de/search?hl=de', {"num"=>"100","start"=>"200", "q"=>suchbegriff})
links = agent.page.search('h3[@class="r"]/a[@class="l"]')
links.each_with_index{|link, index|
if link.text.index('Exchange AG') then
puts "Position #{index+1+res.length+200} #{link.text} (#{link['href']})"
found=true
ergebnisse[suchbegriff]=index+1+res.length+200
break
#break
else
#puts "#{index+1} #{link.text} (#{link['href']})"
end
}
end
if !found then
puts "Nicht unter den ersten 300 Ergebnissen"
ergebnisse[suchbegriff]=300
end
end
#...Eintrag im Text & Tabellen Formular, welches einen Klick auf den Submitbutton wegen Javascript benötigt
agent2 = WWW::Mechanize.new
agent2.get('https://spreadsheets.google.com/viewform?formkey=ID')
#e1=agent2.page.forms.first.field_with(:name => 'entry.1.single')
#e1.value = ergebnisse['pfandhaus']
#pp e1
form = agent2.page.forms[0]
form.fields.find {|f| f.name == 'entry.1.single'}.value = ergebnisse['pfandhaus']
form.fields.find {|f| f.name == 'entry.2.single'}.value = ergebnisse['pfandleihe']
form.fields.find {|f| f.name == 'entry.3.single'}.value = ergebnisse['leihhaus']
form.fields.find {|f| f.name == 'entry.4.single'}.value = ergebnisse["leihhaus berlin"]
form.fields.find {|f| f.name == 'entry.5.single'}.value = ergebnisse['Pfandkredit']
form.fields.find {|f| f.name == 'entry.6.single'}.value = ergebnisse["Bargeld sofort"]
form.fields.find {|f| f.name == 'entry.7.single'}.value = ergebnisse["pfandleihhaus berlin"]
form.fields.find {|f| f.name == 'entry.8.single'}.value = ergebnisse['goldankauf']
form.fields.find {|f| f.name == 'entry.9.single'}.value = ergebnisse['Zahngold']
form.fields.find {|f| f.name == 'entry.10.single'}.value = ergebnisse['Goldmuenzen']
form.fields.find {|f| f.name == 'entry.11.single'}.value = ergebnisse['schmuckankauf']
form.fields.find {|f| f.name == 'entry.12.single'}.value = ergebnisse["Ankauf hochwertiger Uhren"]
form.fields.find {|f| f.name == 'entry.13.single'}.value = ergebnisse['Juwelier']
form.fields.find {|f| f.name == 'entry.14.single'}.value = ergebnisse["Juwelier Berlin"]
form.fields.find {|f| f.name == 'entry.15.single'}.value = ergebnisse['geldwechsel']
form.fields.find {|f| f.name == 'entry.16.single'}.value = ergebnisse['wechselstube']
form.fields.find {|f| f.name == 'entry.17.single'}.value = ergebnisse["Travelers Cheques"]
page = agent2.submit form, form.buttons.first
File.open("res.html","wb+") { |f| f.write(page.body) }