This document provides an overview of using the Mechanize gem to programmatically interact with and parse web pages in Ruby. It demonstrates how to navigate pages, submit forms, select and manipulate page elements, and parse content from the DOM. Key capabilities covered include making HTTP requests, submitting forms, interacting with forms and fields, selecting elements, and parsing returned pages.
Fórum de Software Livre do Serpro RJ 2009Fabio Akita
Esta palestra é muito parecida com a que eu também ministrei no evento Dev in Rio 2009, portanto os slides são quase iguais caso você já tenha baixado.
A apresentação fala sobre filosofias, valores e idéias ágeis e como elas são a fundação da comunidade Ruby on Rails e do ecossistema que se formou ao seu redor.
Alguns dos vídeos mostrados estão disponíveis em http://vimeo.com/akitaonrails.com
Fórum de Software Livre do Serpro RJ 2009Fabio Akita
Esta palestra é muito parecida com a que eu também ministrei no evento Dev in Rio 2009, portanto os slides são quase iguais caso você já tenha baixado.
A apresentação fala sobre filosofias, valores e idéias ágeis e como elas são a fundação da comunidade Ruby on Rails e do ecossistema que se formou ao seu redor.
Alguns dos vídeos mostrados estão disponíveis em http://vimeo.com/akitaonrails.com
Drupal 8 es un entorno nuevo, un nuevo paradigma de programación dentro de Drupal. Charla sobre programación de módulos en D8, impartida en el DrupalSummer de Barcelona 2016.
Drupal 8 is a new environment, a new develop paradigm. This session is about drupal 8 module development, imparted in DrupalSummer 2016, in Barcelona.
Drupal 8, page callbacks are completely rewritten by utilizing Symfony Routing component. This session will explain many parts of routing, how to convert from Drupal 7 menu system to Drupal 8 routing system and it will cover how to define local tasks, local actions, and contextual links in Drupal 8.
Everything you always wanted to know about forms* *but were afraid to askAndrea Giuliano
La componente dei Form di Symfony2 rende possibile la costruzione di diverse tipologie di form in modo del tutto semplice. La sua architettura flessibile e altamente scalabile permette di poter gestire strutture adatte ad ogni tipo di esigenza. Tuttavia, conoscere come utilizzare appieno tutta la sua potenza non è banale. In questo talk verrà trattato in profondità la componente Form di Symfony2, mostrando i suoi meccanismi di base e come utilizzarli per estenderli ed introdurre la propria logica di business, così da costruire form cuciti a misura delle tue necessità.
Forms are inevitable. Forms are hard. Forms with React sometimes even harder. In this talk, we’ll start by exploring best practices to efficiently work with react/redux forms and proceed with building a custom abstraction layer for easier form management.
Django Meetup Bogotá. Class Based Views con ejemplos. Class Based Views with examples.
Código fuente: https://bitbucket.org/vero4ka/cbvexamples
Class Based Views with examles.
This session will introduce you to the new Form component in Symfony2. With the new domain-driven paradigma and its flexible design, the component opens a door to a wide range of possibilities. The brand new architecture makes creating complex forms easier and faster than ever before. This talk will teach you today what you need to know to build powerful forms tomorrow.
TRUNG TÂM ĐÀO TẠO DJ CHUYÊN NGHIỆP
TẠI HÀ NỘI
Webiste: Hyperdj.vn | Hotline: 979 39 3333 - 0466 543 888
Address: 149 Thụy Khuê, Quận Tây Hồ, Thành Phố Hà Nội
Drupal 8 es un entorno nuevo, un nuevo paradigma de programación dentro de Drupal. Charla sobre programación de módulos en D8, impartida en el DrupalSummer de Barcelona 2016.
Drupal 8 is a new environment, a new develop paradigm. This session is about drupal 8 module development, imparted in DrupalSummer 2016, in Barcelona.
Drupal 8, page callbacks are completely rewritten by utilizing Symfony Routing component. This session will explain many parts of routing, how to convert from Drupal 7 menu system to Drupal 8 routing system and it will cover how to define local tasks, local actions, and contextual links in Drupal 8.
Everything you always wanted to know about forms* *but were afraid to askAndrea Giuliano
La componente dei Form di Symfony2 rende possibile la costruzione di diverse tipologie di form in modo del tutto semplice. La sua architettura flessibile e altamente scalabile permette di poter gestire strutture adatte ad ogni tipo di esigenza. Tuttavia, conoscere come utilizzare appieno tutta la sua potenza non è banale. In questo talk verrà trattato in profondità la componente Form di Symfony2, mostrando i suoi meccanismi di base e come utilizzarli per estenderli ed introdurre la propria logica di business, così da costruire form cuciti a misura delle tue necessità.
Forms are inevitable. Forms are hard. Forms with React sometimes even harder. In this talk, we’ll start by exploring best practices to efficiently work with react/redux forms and proceed with building a custom abstraction layer for easier form management.
Django Meetup Bogotá. Class Based Views con ejemplos. Class Based Views with examples.
Código fuente: https://bitbucket.org/vero4ka/cbvexamples
Class Based Views with examles.
This session will introduce you to the new Form component in Symfony2. With the new domain-driven paradigma and its flexible design, the component opens a door to a wide range of possibilities. The brand new architecture makes creating complex forms easier and faster than ever before. This talk will teach you today what you need to know to build powerful forms tomorrow.
TRUNG TÂM ĐÀO TẠO DJ CHUYÊN NGHIỆP
TẠI HÀ NỘI
Webiste: Hyperdj.vn | Hotline: 979 39 3333 - 0466 543 888
Address: 149 Thụy Khuê, Quận Tây Hồ, Thành Phố Hà Nội
Paul Ruescher's Slide deck from the first Ember.js Meetup - Vancouver. (#EmberYVR) May 14th 2014 at CodeCore Bootcamp.
Ember.js is a framework for creating ambitious web applications. What does an "ambitious web application" even mean? What if I’m not working on an ambitious web application? In this talk, Paul will put you through an Ember Bootcamp on your way to $$$.
Uniface Lectures Webinar - Building Responsive Applications with Uniface: Dev...Uniface
Building Responsive Applications with Uniface: Development (Part 2 of 3). In this webinar you will learn:
• Dynamic Server Page (DSP) Coding Recap
• User Interface Techniques
• Demo WebStart Application
• Code Walkthrough (View on our YouTube channel)
This is a presentation I gave in Helsinki Node.js meetup (check http://helnode.io).
I have been implementing a realtime communication service with Ruby during my previous assignment. I've used Rails and lower level Ruby frameworks such as Sinatra and Resque workers.
I do like especially the Rack, since it enables building an efficient server stack. You can throw in middleware for throttling, authentication and for other tasks quite easily.
Ruby was a strong candidate also for my current project. I consider the Ruby code is more readable than JavaScript. However, once I understood what ECMAScript 6 brings in, I was sold to Node.js. Generators will enable actually very similar implementations than the Ruby's Rack stack. In my opinion, JavaScript will finally become mature with JS1.7 as the "callback spaghetti" will be soon history."
Portfolio of .Net work by Robert Tanenbaum showing both code and screenshots of Windows Forms, Web Sites, polymorphism, T-SQL and other .Net technologies.
Smartphones zijn niet meer weg te denken uit het dagelijks leven. Bedrijven ontwikkelen steeds meer en meer toepassingen om hun producten of diensten via deze smartphones aan te bieden.
Sencha Touch stelt ontwikkelaars in staat om met behulp van HTML5, CSS en JavaScript applicaties te bouwen die zowel op Android als op iOS draaien.
Deze technische sessie wordt gegeven door Tom Druyts.
Neuro-symbolic is not enough, we need neuro-*semantic*Frank van Harmelen
Neuro-symbolic (NeSy) AI is on the rise. However, simply machine learning on just any symbolic structure is not sufficient to really harvest the gains of NeSy. These will only be gained when the symbolic structures have an actual semantics. I give an operational definition of semantics as “predictable inference”.
All of this illustrated with link prediction over knowledge graphs, but the argument is general.
Essentials of Automations: Optimizing FME Workflows with ParametersSafe Software
Are you looking to streamline your workflows and boost your projects’ efficiency? Do you find yourself searching for ways to add flexibility and control over your FME workflows? If so, you’re in the right place.
Join us for an insightful dive into the world of FME parameters, a critical element in optimizing workflow efficiency. This webinar marks the beginning of our three-part “Essentials of Automation” series. This first webinar is designed to equip you with the knowledge and skills to utilize parameters effectively: enhancing the flexibility, maintainability, and user control of your FME projects.
Here’s what you’ll gain:
- Essentials of FME Parameters: Understand the pivotal role of parameters, including Reader/Writer, Transformer, User, and FME Flow categories. Discover how they are the key to unlocking automation and optimization within your workflows.
- Practical Applications in FME Form: Delve into key user parameter types including choice, connections, and file URLs. Allow users to control how a workflow runs, making your workflows more reusable. Learn to import values and deliver the best user experience for your workflows while enhancing accuracy.
- Optimization Strategies in FME Flow: Explore the creation and strategic deployment of parameters in FME Flow, including the use of deployment and geometry parameters, to maximize workflow efficiency.
- Pro Tips for Success: Gain insights on parameterizing connections and leveraging new features like Conditional Visibility for clarity and simplicity.
We’ll wrap up with a glimpse into future webinars, followed by a Q&A session to address your specific questions surrounding this topic.
Don’t miss this opportunity to elevate your FME expertise and drive your projects to new heights of efficiency.
Connector Corner: Automate dynamic content and events by pushing a buttonDianaGray10
Here is something new! In our next Connector Corner webinar, we will demonstrate how you can use a single workflow to:
Create a campaign using Mailchimp with merge tags/fields
Send an interactive Slack channel message (using buttons)
Have the message received by managers and peers along with a test email for review
But there’s more:
In a second workflow supporting the same use case, you’ll see:
Your campaign sent to target colleagues for approval
If the “Approve” button is clicked, a Jira/Zendesk ticket is created for the marketing design team
But—if the “Reject” button is pushed, colleagues will be alerted via Slack message
Join us to learn more about this new, human-in-the-loop capability, brought to you by Integration Service connectors.
And...
Speakers:
Akshay Agnihotri, Product Manager
Charlie Greenberg, Host
UiPath Test Automation using UiPath Test Suite series, part 3DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 3. In this session, we will cover desktop automation along with UI automation.
Topics covered:
UI automation Introduction,
UI automation Sample
Desktop automation flow
Pradeep Chinnala, Senior Consultant Automation Developer @WonderBotz and UiPath MVP
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
DevOps and Testing slides at DASA ConnectKari Kakkonen
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...DanBrown980551
Do you want to learn how to model and simulate an electrical network from scratch in under an hour?
Then welcome to this PowSyBl workshop, hosted by Rte, the French Transmission System Operator (TSO)!
During the webinar, you will discover the PowSyBl ecosystem as well as handle and study an electrical network through an interactive Python notebook.
PowSyBl is an open source project hosted by LF Energy, which offers a comprehensive set of features for electrical grid modelling and simulation. Among other advanced features, PowSyBl provides:
- A fully editable and extendable library for grid component modelling;
- Visualization tools to display your network;
- Grid simulation tools, such as power flows, security analyses (with or without remedial actions) and sensitivity analyses;
The framework is mostly written in Java, with a Python binding so that Python developers can access PowSyBl functionalities as well.
What you will learn during the webinar:
- For beginners: discover PowSyBl's functionalities through a quick general presentation and the notebook, without needing any expert coding skills;
- For advanced developers: master the skills to efficiently apply PowSyBl functionalities to your real-world scenarios.
Transcript: Selling digital books in 2024: Insights from industry leaders - T...BookNet Canada
The publishing industry has been selling digital audiobooks and ebooks for over a decade and has found its groove. What’s changed? What has stayed the same? Where do we go from here? Join a group of leading sales peers from across the industry for a conversation about the lessons learned since the popularization of digital books, best practices, digital book supply chain management, and more.
Link to video recording: https://bnctechforum.ca/sessions/selling-digital-books-in-2024-insights-from-industry-leaders/
Presented by BookNet Canada on May 28, 2024, with support from the Department of Canadian Heritage.
Accelerate your Kubernetes clusters with Varnish CachingThijs Feryn
A presentation about the usage and availability of Varnish on Kubernetes. This talk explores the capabilities of Varnish caching and shows how to use the Varnish Helm chart to deploy it to Kubernetes.
This presentation was delivered at K8SUG Singapore. See https://feryn.eu/presentations/accelerate-your-kubernetes-clusters-with-varnish-caching-k8sug-singapore-28-2024 for more details.
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Ramesh Iyer
In today's fast-changing business world, Companies that adapt and embrace new ideas often need help to keep up with the competition. However, fostering a culture of innovation takes much work. It takes vision, leadership and willingness to take risks in the right proportion. Sachin Dev Duggal, co-founder of Builder.ai, has perfected the art of this balance, creating a company culture where creativity and growth are nurtured at each stage.
Generating a custom Ruby SDK for your web service or Rails API using Smithyg2nightmarescribd
Have you ever wanted a Ruby client API to communicate with your web service? Smithy is a protocol-agnostic language for defining services and SDKs. Smithy Ruby is an implementation of Smithy that generates a Ruby SDK using a Smithy model. In this talk, we will explore Smithy and Smithy Ruby to learn how to generate custom feature-rich SDKs that can communicate with any web service, such as a Rails JSON API.
UiPath Test Automation using UiPath Test Suite series, part 4DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 4. In this session, we will cover Test Manager overview along with SAP heatmap.
The UiPath Test Manager overview with SAP heatmap webinar offers a concise yet comprehensive exploration of the role of a Test Manager within SAP environments, coupled with the utilization of heatmaps for effective testing strategies.
Participants will gain insights into the responsibilities, challenges, and best practices associated with test management in SAP projects. Additionally, the webinar delves into the significance of heatmaps as a visual aid for identifying testing priorities, areas of risk, and resource allocation within SAP landscapes. Through this session, attendees can expect to enhance their understanding of test management principles while learning practical approaches to optimize testing processes in SAP environments using heatmap visualization techniques
What will you get from this session?
1. Insights into SAP testing best practices
2. Heatmap utilization for testing
3. Optimization of testing processes
4. Demo
Topics covered:
Execution from the test manager
Orchestrator execution result
Defect reporting
SAP heatmap example with demo
Speaker:
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
Leading Change strategies and insights for effective change management pdf 1.pdf
SAVIA
1. The Agent Accessing page elements Forms
# The current page # Submitting a form without a button:
require 'rubygems' form.submit
agent.page
require 'mechanize'
# The HTML page content # Submitting a form with the default button
agent = WWW::Mechanize.new page.body form.click_button()
# disable keep_alive, when running into # forms, links, frames # Submitting a form with a specific button
# problems with session timeouts or getting an page.forms, page.links, frames form.click_button(form.button_with(:name => 'OK')
# EOFError
# Selecting by criteria follows the pattern: # Form elements
agent.keep_alive = false form.fields, form.buttons, form.file_uploads, form.radio_buttons,
# page.element(s)_with(:criteria => value)
# The plural form (.elements) returns an form.checkboxes
# Setting user agent: # array, the singular form (.element) the
agent.user_agent = 'Friendly Mechanize Script" # first matching element or nil. Criteria # Form elements can be selected just like page elements
# is an attribute symbol and value may be # form.element(s)_with(:criteria => value)
# Using one of the predefined user agents: # a string or a regular expression. If no # e.g.:
# 'Mechanize', 'Mac Mozilla', 'Linux Mozilla'. # criteria attributr is given, :name will form.field_with(:name => 'password')
# be used. e.g.: form.field_with('password')
# 'Windows IE 6', 'iPhone', 'Linux Konqueror',
page.form_with(:name => 'formName') form.checkboxes(:value => /view_.*/)
# 'Windows IE 7', 'Mac FireFox', 'Mac Safari',
page.form_with('formName')
# 'Windows Mozilla' # Field values can also be selected directly by their name
page.links_with(:text => /[0-9]*/
agent.user_agent_alias = 'Mac Safari' form.password = 'secret'
# To verify server certificates: # Setting field values
# (A collection of certificates is available # field : .value = 'something'
# here: http://curl.haxx.se/ca/ ) # checkbox : .(un)check / .checked = true|false
# radio_button: .(un)check / .checked = true|false
agent.ca_file = 'cacert.pem'
# file_upload : .file_name = '/tmp/upload.dat'
Ruby / Mechanize
# e.g.:
# Don't follow HTTP redirects form.field_with('foo').value = 'something'
agent.redirect_ok = false form.checkbox_with(:value => 'blue').uncheck
http://mechanize.rubyforge.org/mechanize/ form.radio_buttons[3].check
# Follow refresh in meta tags
agent.follow_meta_refresh = true Nokogiri # Select lists / drop down fields:
form.field_with('color').option[2].select
http://nokogiri.org/ form.field_with('color').options.find{|o| o.value == 'red'}.select
# Enable logging
form.field_with('color').select_none
require 'logger' form.field_with('color').select_all
agent.log = Logger.new('mechanize.log')
Parsing the page content
# Selecting elements from the documents DOM
Hello Mechanize! nodes = agent.page.search('expression')
nodes = agent.page / 'expression'
require 'rubygems'
require 'mechanize'
Navigation/History # Selecting the first matching element or nil
agent = WWW::Mechanize.new node = agent.page.at('expression')
# load a page agent.get('http://rubyforge.org/')
agent.get('http://the.internet.net') # 'expression' might be an XPath or CSS selector
agent.page.forms.first.words = 'mechanize' nodes = agent.page.search('//h2/a[@class="title"]')
# Go back to the last page: agent.page.forms.first.click_button nodes = agent.page.search('.h2 a.title')
agent.back
agent.page.link_with(:text => /WWW::Mechanize/).click
agent.page.link_with(:text => 'Files').click
# navigating the document tree:
# Follow a link by its text
agent.link_with(:text => 'click me').click node.parent
links = agent.page / 'strong/a' node.children
# Backup history, execute block and version = links.find do |link|
# restore history link['href'] =~ /shownotes.*release_id/ # node content and attributes
agent.transact do end.text node.text
... node.inner_html
end puts "Hello Mechanize #{version}!"
node.attributes['width']
# found nodes, can be searched the same way
rows = agent.page / 'table/tr'
Version 2010-01-30 Creative Commons License value = rows[0].at('td[@class="value"]').text
(c) 2010 Tobias Grimm http://creativecommons.org/licenses/by/3.0