Skip to content

Instantly share code, notes, and snippets.

View fractalatcarf's full-sized avatar

Vincent fractalatcarf

View GitHub Profile
@fractalatcarf
fractalatcarf / coach_answer.rb
Created March 28, 2017 16:38
Live code du 28 mars, Stupid coaching
def coach_answer(your_message)
# TODO: return coach answer to your_message
good_message = "I am going to work right now!"
if your_message.end_with?("?")
return "Silly question, get dressed and go to work!"
elsif your_message.upcase != good_message.upcase
return "I don't care, get dressed and go to work!"
else
return ""
end
@fractalatcarf
fractalatcarf / gist:adcbe23477a816d9d817cd68b135a211
Created March 29, 2017 08:54
live code de ce matin, IF, FOR, ARRAY & ARRAY.EACH
# # # def can_vote?(age=20)
# # # ## age == 18
# # # return true if age > 17
# # # return false
# # # end
# # # # # age = 17 # affectation
@fractalatcarf
fractalatcarf / livecode.rb
Last active March 29, 2017 20:11
live code du mercredi 29 mars - acronymizer + rock_paper_scissors
def acronymizer(sentence)
# séparer les mots de la phrase
words = sentence.split(" ")
# prendre la 1ere lette de chaque mot + majuscule
first_letters = []
words.each do |word|
first_letters << word[0].upcase
end
@fractalatcarf
fractalatcarf / morning_code.rb
Created March 30, 2017 09:04
Live code de ce matin
musicians = ['Jimmy Page', 'Robert Plant', 'John Paul Jones', 'John Bonham']
# puts musicians[0]
# puts musicians.length
musicians << "Jacques Brel"
# for index in 0...(musicians.length)
# puts "#{index + 1} - #{musicians[index]}"
# end
@fractalatcarf
fractalatcarf / live.rb
Created March 30, 2017 16:05
live code de l'acronymizer
def acronymizer(sentence)
# TODO implement acornymizer method
to_ignore = %w(de des d à)
split = sentence.split(/[ ',.]/)
filtered = split.reject{|word| to_ignore.include?(word)}
result = filtered.map do |word|
if block_given?
letters = yield(word)
else
letters = 1
@fractalatcarf
fractalatcarf / morning.rb
Created March 31, 2017 08:34
live code du matin
# # # students_names = ["Pierre", "Claire", "Edouard", "Monique"]
# # # students_ages = ["45", "29", "32", "89"]
# # # students_names.each_with_index do |name, i|
# # # puts "#{name} a #{students_ages[i]} ans"
# # # end
# # # students_ages["Pierre"]
@fractalatcarf
fractalatcarf / live.rb
Created April 3, 2017 09:54
count words in a text file
article = open('article.txt').read
words = article.split(" ")
hash_words = {}
p words.length
words.each do |word|
if hash_words.key? (word)
hash_words[word] += 1
else
@fractalatcarf
fractalatcarf / live.rb
Created April 3, 2017 15:37
live code du soir
require 'date'
DEPTS = {
13 => "Bouches du Rhone",
84 => "Vauclause"
}
def parse_nss(nss)
match = nss.match(/^(?<sex>1|2) ?(?<year>\d{2}) ?(?<month>\d{2}) ?(?<dept>\d{2}) ?\d{3} ?\d{3}$/)
return "invalid ssn" if match.nil?
@fractalatcarf
fractalatcarf / zalendo.rb
Created April 4, 2017 16:11
Zalendo shoes scrapping
require 'open-uri'
require 'nokogiri'
require 'csv'
require 'json'
def scrap_zalendo(url)
shoes = []
10.times do |i|
puts "scrapping page #{i+1} ..."
html_file = open("#{url}/?p=#{i+1}")

installation de la gem 'watir'

gem install watir

téléchargement du driver chrome

télécharge le driver chrome (c’est le browser, mais executable en ligne de commande). Pour faire ça, va ici : https://chromedriver.storage.googleapis.com/2.25/chromedriver_mac64.zip

Dézipe et déplace le fichier “chromedriver” dans le répertoire /usr/local/bin avec la commande suivante : mv Downloads/chromedriver /usr/local/bin/