aranha-selenium 0.2.2 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: babf239a58b26fbacd2d93851096e8eb523e831b482a49f8e4a6bc92d1a316da
4
- data.tar.gz: 5609c6618cf4567646c59a7c3b318c35642956198de0520741e91a707966b828
3
+ metadata.gz: 82fc3d4a93f7604561ee1afce7acfce337143bbc62334bd833ba2cd9fcefd9b0
4
+ data.tar.gz: ba31da261585ca18616e000cf800c10a1204913f55a7356d54c713e9c41ee79b
5
5
  SHA512:
6
- metadata.gz: 762f004a8b8771a1da6a97ca645c76bb0588239389c576af2a31dc62b5df44f24ed88a219971781b64ab32fe5d0e69f65f0d70b26eb2ec269be6df10f32ce424
7
- data.tar.gz: 33b6b7e8b490dfa8b0ddfd8db38dfcf3fd1dd33c8f2b7be3bc0d114ac99b8d338fc4e888343a29e9079fb38ce04f0f3c9aa49b968fcc3010ab205675663321c2
6
+ metadata.gz: 1fb2e96b4ead2335ce8e61322e4abbd291a47daadbc68f8722e9cde5e4f5b1b339e3758a19b7af44f068b184b9318a80a43ada69c4175192a3ef1b06806ebe97
7
+ data.tar.gz: e0816a6dc634e784060da79d1723815dd7fb33c51d173157ebaef96b66de8d45eeb576eb20d41bbee0daaa87dbf63b66b300b0cceee83af9649efb276bd28358
@@ -20,7 +20,8 @@ module Aranha
20
20
  end
21
21
 
22
22
  def chrome_arguments
23
- r = %w[--disable-popup-blocking --disable-translate]
23
+ r = %w[--disable-popup-blocking --disable-translate
24
+ --disable-blink-features=AutomationControlled]
24
25
  r << '--ignore-certificate-errors' if accept_insecure_certs?
25
26
  r << '--headless' if headless?
26
27
  r << "--user-agent=#{user_agent}" if user_agent.present?
@@ -23,11 +23,9 @@ module Aranha
23
23
  end
24
24
 
25
25
  def build_capabilities
26
- if accept_insecure_certs?
27
- ::Selenium::WebDriver::Remote::Capabilities.firefox(accept_insecure_certs: true)
28
- else
29
- ::Selenium::WebDriver::Remote::Capabilities.firefox
30
- end
26
+ caps = {}
27
+ caps[:accept_insecure_certs] = true if accept_insecure_certs?
28
+ ::Selenium::WebDriver::Remote::Capabilities.firefox(caps)
31
29
  end
32
30
 
33
31
  def build_options
@@ -50,7 +48,7 @@ module Aranha
50
48
 
51
49
  def build_profile
52
50
  if profile_name.present?
53
- ::Selenium::WebDriver::Firefox::Profile.from_name(v)
51
+ ::Selenium::WebDriver::Firefox::Profile.from_name(profile_name)
54
52
  elsif profile_dir.present?
55
53
  ::FileUtils.mkdir_p(profile_dir)
56
54
  ::Selenium::WebDriver::Firefox::Profile.new(profile_dir)
@@ -17,6 +17,13 @@ module Aranha
17
17
  )
18
18
  end
19
19
 
20
+ # @return [Selenium::WebDriver::Element, nil]
21
+ def find_element(*args, &block)
22
+ return args.first if args.count >= 1 && args.first.is_a?(::Selenium::WebDriver::Element)
23
+
24
+ __getobj__.find_element(*args, &block)
25
+ end
26
+
20
27
  def find_or_not_element(find_element_args)
21
28
  r = find_elements(find_element_args)
22
29
  r.any? ? r.first : nil
@@ -44,6 +51,13 @@ module Aranha
44
51
  new_downloads.first
45
52
  end
46
53
 
54
+ def wait_for_url_change(&block)
55
+ previous_url = current_url
56
+ block&.call
57
+
58
+ wait.until { current_url != previous_url }
59
+ end
60
+
47
61
  def current_source
48
62
  element = find_element(xpath: '/html[1]')
49
63
  raise 'Root element not found' unless element
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Aranha
4
4
  module Selenium
5
- VERSION = '0.2.2'
5
+ VERSION = '0.3.0'
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aranha-selenium
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Esquilo Azul Company
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-07-25 00:00:00.000000000 Z
11
+ date: 2022-05-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: eac_ruby_utils