· 7 years ago · Sep 29, 2018, 04:56 PM
1require 'nokogiri'
2require 'csv'
3
4page = Nokogiri::HTML(open("index.html"))
5
6fullName = page.css('li._5i_q').css("a[data-gt]").children.map {|name| name.text }
7shortURL = page.css('li._5i_q').css("._5j0e a[data-hovercard]")
8myID = shortURL.map {|element|
9 element["data-hovercard"][/id=([^&]*)/].gsub('id=', '')
10}
11messenger = shortURL.map {|element|
12 element["data-hovercard"][/id=([^&]*)/].gsub('id=', '') + "@gmail.com"
13}
14
15attributes = %w{ID FullName Messenger}
16
17CSV.open('chatId.csv', 'w') do |csv|
18 csv << attributes
19
20 myID.each do |x|
21 csv << [x]
22 end
23 fullName.each do |y|
24 csv << [y]
25 end
26 messenger.each do |z|
27 csv << [z]
28 end
29end
30
31data = myID.zip(fullName, shortUrl)
32
33CSV.open('chatId.csv', 'w') do |csv|
34 csv << attributes
35 csv << "n"
36 data.each do |d|
37 csv << d.to_csv
38 end
39end