baidu-tuiguang 0.1.2 → 0.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 8f7cfd9e817799bddadf9fc3a85c0f777e091b5e
4
- data.tar.gz: dfcb1d19776ae3245cdd277c26b2d4b2a08bde59
3
+ metadata.gz: e1bba111b8f42fce134bfaa3e300adbf2f7bcd83
4
+ data.tar.gz: ac32dce0e9e443f8555f60d3aa94ddd5ca8b73f7
5
5
  SHA512:
6
- metadata.gz: 828310e8a8303e2a4ef6f63fb68218939dc7844221367020912e63a0a30fecef30d5bb5e7ad7addcbf6308daaebc112363122494fd100245f6382416e5bb9f17
7
- data.tar.gz: a38160ed804790fce2e22f6414fa9138d1d1ab4741f10ac9564f0914032cf7ecd6cb760f595a53b3a5cd516afbb73990cae16d7e80dbc386f50967496daa3ce5
6
+ metadata.gz: 994309ebbabebd92160d2c27f017fad60e2678070d359f94a969967bd56ea6f0233376e27d030a6304fc5104ef3cd4aec75e19e8b4c083bca5030c1141ec4d30
7
+ data.tar.gz: 51717efce5ff0d376706ba2e38219e42815f0035e611f89a25a22807daecfb8fe46e903b7d2e435bc713b7a9e486ab95328ebb7444046c60eb1641ab97e0df5f
@@ -33,4 +33,6 @@ Gem::Specification.new do |spec|
33
33
  spec.add_development_dependency "bundler", "~> 1.14"
34
34
  spec.add_development_dependency "rake", "~> 10.0"
35
35
  spec.add_development_dependency "minitest", "~> 5.0"
36
+ spec.add_development_dependency "json", "~> 2.0", ">= 2.0.2"
37
+ spec.add_development_dependency "openssl", "~> 2.0", ">= 2.0.2"
36
38
  end
@@ -1,10 +1,11 @@
1
1
  require "baidu/tuiguang/version"
2
2
  require 'uri'
3
3
  require 'net/http'
4
- require 'json'
5
4
  require 'zlib'
6
5
  require 'stringio'
7
6
  require 'date'
7
+ require 'json'
8
+ require 'openssl'
8
9
 
9
10
  module Baidu
10
11
  module Tuiguang
@@ -18,13 +19,13 @@ module Baidu
18
19
  end
19
20
 
20
21
  def basic_info
21
- data = request("path": 'GET/authInfo', "params": {})
22
+ data = request('https://tuiguang.baidu.com/request.ajax', "path": 'GET/authInfo', "params": {})
22
23
  {'username' => data['username']}
23
24
  end
24
25
 
25
26
  def plans(page = 1, page_size = 20)
26
27
  today = Time.now.to_date
27
- data = request(path: 'vega/GET/mtllist/plan', params: {"fields": ["planid", "pausestat", "planname", "shows", "clks", "paysum", "trans", "avgprice", "plandynamicideastat", "acctdynamicideastat", "mPriceFactor", "planstat", "remarketingstat", "deviceprefer", "wregion", "qrstat1", "phonetrans", "allipblackcnt", "clkrate", "wbudget", "plancyc", "showprob", "allnegativecnt", "showpay", "adtype", "acctdynamictagsublinkstat", "acctdynamictitlestat", "acctdynamichotredirectstat", "plandynamictagsublinkstat", "plandynamictitlestat", "plandynamichotredirectstat", "plandynamictitlelist", "plandynamictitleabstract", "acctdynamictitlelist", "acctdynamictitleabstract", "acctscenarizedstatus", "planscenarizedphrasestatus", "atstatus", "atbid", "atbudget", "bidprefer", "pcpricefactor", "inpeople", "remarketingPauseStat", "robotAPlanState"], "levelCond": {"userid": cookies_params['__cas__id__3']}, "pageNo": page, "pageSize": page_size, "startTime": today, "endTime": today})
28
+ data = request('http://fengchao.baidu.com/nirvana/request.ajax', path: 'vega/GET/mtllist/plan', params: {"fields": ["planid", "pausestat", "planname", "shows", "clks", "paysum", "trans", "avgprice", "plandynamicideastat", "acctdynamicideastat", "mPriceFactor", "planstat", "remarketingstat", "deviceprefer", "wregion", "qrstat1", "phonetrans", "allipblackcnt", "clkrate", "wbudget", "plancyc", "showprob", "allnegativecnt", "showpay", "adtype", "acctdynamictagsublinkstat", "acctdynamictitlestat", "acctdynamichotredirectstat", "plandynamictagsublinkstat", "plandynamictitlestat", "plandynamichotredirectstat", "plandynamictitlelist", "plandynamictitleabstract", "acctdynamictitlelist", "acctdynamictitleabstract", "acctscenarizedstatus", "planscenarizedphrasestatus", "atstatus", "atbid", "atbudget", "bidprefer", "pcpricefactor", "inpeople", "remarketingPauseStat", "robotAPlanState"], "levelCond": {"userid": cookies_params['__cas__id__3']}, "pageNo": page, "pageSize": page_size, "startTime": today, "endTime": today})
28
29
  result = {'data' => [], 'count' => data['totalCount']}
29
30
  data['listData'].each do |item|
30
31
  result['data'] << {
@@ -41,7 +42,7 @@ module Baidu
41
42
 
42
43
  def groups(plan_id, page = 1, page_size = 20)
43
44
  today = Time.now.to_date
44
- data = request("path": 'vega/GET/mtllist/unit', "params": {"fields": ["unitid", "planid", "pausestat", "unitname", "planname", "unitbid", "unitMPriceFactor", "shows", "clks", "paysum", "trans", "avgprice", "unitstat", "matchPriceFactor", "matchPriceStatus", "phonetrans", "clkrate", "extbind", "allnegativecnt", "showpay", "deviceprefer", "mPriceFactor", "adtype", "finebidstatus", "atstatus", "atbid", "planatbid", "bidprefer", "pcpricefactor", "planPcpricefactor"], "pageNo": page, "pageSize": page_size, "startTime": today, "endTime": today, "levelCond": {"planid": plan_id}})
45
+ data = request('http://fengchao.baidu.com/nirvana/request.ajax', "path": 'vega/GET/mtllist/unit', "params": {"fields": ["unitid", "planid", "pausestat", "unitname", "planname", "unitbid", "unitMPriceFactor", "shows", "clks", "paysum", "trans", "avgprice", "unitstat", "matchPriceFactor", "matchPriceStatus", "phonetrans", "clkrate", "extbind", "allnegativecnt", "showpay", "deviceprefer", "mPriceFactor", "adtype", "finebidstatus", "atstatus", "atbid", "planatbid", "bidprefer", "pcpricefactor", "planPcpricefactor"], "pageNo": page, "pageSize": page_size, "startTime": today, "endTime": today, "levelCond": {"planid": plan_id}})
45
46
  result = {'data' => [], 'count' => data['totalCount']}
46
47
  data['listData'].each do |item|
47
48
  result['data'] << {
@@ -56,7 +57,7 @@ module Baidu
56
57
 
57
58
  def keywords(plan_id, group_id, page = 1, page_size = 20)
58
59
  today = Time.now.to_date
59
- data = request("path": 'vega/GET/mtllist/word', "params": {"fields": ["winfoid", "unitid", "planid", "wordid", "pausestat", "showword", "unitname", "planname", "wordstat", "bid", "unitbid", "pcqscore", "mqscore", "trans", "paysum", "shows", "clks", "avgprice", "wmatch", "shadow_wurl", "shadow_mwurl", "activestat", "wctrl", "wurl", "pageexp", "mwurl", "showqscore", "blockreason", "confidence", "pcblockreason", "pcconfidence", "matchPriceEnableStatus", "clkrate", "showpay", "adtype", "bidprefer", "mPriceGuide", "leftPriceGuide", "left3PriceGuide", "marker", "mconfidence", "mblockreason", "pcqscorecon", "mqscorecon", "pcrelativity", "mrelativity", "pclandpage", "mlandpage", "pclandpagereason", "mlandpagereason", "addfrom", "modfrom"], "pageNo": page, "pageSize": page_size, "startTime": today, "endTime": today, "levelCond": {"unitid": group_id}})
60
+ data = request('http://fengchao.baidu.com/nirvana/request.ajax', "path": 'vega/GET/mtllist/word', "params": {"fields": ["winfoid", "unitid", "planid", "wordid", "pausestat", "showword", "unitname", "planname", "wordstat", "bid", "unitbid", "pcqscore", "mqscore", "trans", "paysum", "shows", "clks", "avgprice", "wmatch", "shadow_wurl", "shadow_mwurl", "activestat", "wctrl", "wurl", "pageexp", "mwurl", "showqscore", "blockreason", "confidence", "pcblockreason", "pcconfidence", "matchPriceEnableStatus", "clkrate", "showpay", "adtype", "bidprefer", "mPriceGuide", "leftPriceGuide", "left3PriceGuide", "marker", "mconfidence", "mblockreason", "pcqscorecon", "mqscorecon", "pcrelativity", "mrelativity", "pclandpage", "mlandpage", "pclandpagereason", "mlandpagereason", "addfrom", "modfrom"], "pageNo": page, "pageSize": page_size, "startTime": today, "endTime": today, "levelCond": {"unitid": group_id}})
60
61
  result = {'data' => [], 'count' => data['totalCount']}
61
62
  data['listData'].each do |item|
62
63
  match = ''
@@ -112,25 +113,29 @@ module Baidu
112
113
  end
113
114
 
114
115
  def keyword_pause_and_enable(keyword_id, pause = true)
115
- request("path": 'vega/MOD/keyword', "params": {"winfoid": [keyword_id.to_i], "items": {"pausestat": pause ? 1 : 0}})
116
+ request('http://fengchao.baidu.com/nirvana/request.ajax', "path": 'vega/MOD/keyword', "params": {"winfoid": [keyword_id.to_i], "items": {"pausestat": pause ? 1 : 0}})
116
117
  end
117
118
 
118
119
  def keywords_pause_and_enable(keyword_ids = [], pause = true)
119
- request("path": 'vega/MOD/adkeyword', "params": {"checkAll": false, "mtlCond": {"levelCond": {"userid": cookies_params['__cas__id__3']}}, "mtlIds": keyword_ids.map {|keyword_id| keyword_id.to_s}, "items": {"pausestat": pause}})
120
+ request('http://fengchao.baidu.com/nirvana/request.ajax', "path": 'vega/MOD/adkeyword', "params": {"checkAll": false, "mtlCond": {"levelCond": {"userid": cookies_params['__cas__id__3']}}, "mtlIds": keyword_ids.map {|keyword_id| keyword_id.to_s}, "items": {"pausestat": pause}})
120
121
  end
121
122
 
122
- def request(params = {})
123
+ def request(url, params = {})
123
124
  params.merge!(
124
125
  "userid": cookies_params['__cas__id__3'],
125
126
  "token": cookies_params['__cas__st__3']
126
127
  )
127
128
  @params = params
128
129
  params[:"params"] = params[:"params"].to_json
129
- url = URI('http://fengchao.baidu.com/nirvana/request.ajax')
130
- url.query = URI.encode_www_form(path: params[:"path"])
131
- @url = url.to_s
132
- http = Net::HTTP.new(url.host, url.port)
133
- request = Net::HTTP::Post.new(url)
130
+ uri = URI(url)
131
+ uri.query = URI.encode_www_form(path: params[:"path"])
132
+ @url = uri.to_s
133
+ http = Net::HTTP.new(uri.host, uri.port)
134
+ if uri.scheme == 'https'
135
+ http.use_ssl = true
136
+ http.verify_mode = OpenSSL::SSL::VERIFY_NONE
137
+ end
138
+ request = Net::HTTP::Post.new(uri)
134
139
  request["accept"] = '*/*'
135
140
  request["accept-encoding"] = 'gzip, deflate'
136
141
  request["accept-language"] = 'zh-CN,zh;q=0.8'
@@ -138,8 +143,8 @@ module Baidu
138
143
  request["connection"] = 'keep-alive'
139
144
  request["content-type"] = 'application/x-www-form-urlencoded'
140
145
  request["cookie"] = @cookies
141
- request["host"] = 'fengchao.baidu.com'
142
- request["origin"] = 'http://fengchao.baidu.com'
146
+ request["host"] = uri.host
147
+ request["origin"] = "#{uri.scheme}://#{uri.host}"
143
148
  request["pragma"] = 'no-cache'
144
149
  request["referer"] = "http://fengchao.baidu.com/nirvana/main.html?userid=#{cookies_params['__cas__id__3']}"
145
150
  request["user-agent"] = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.133 Safari/537.36'
@@ -1,5 +1,5 @@
1
1
  module Baidu
2
2
  module Tuiguang
3
- VERSION = "0.1.2"
3
+ VERSION = "0.1.3"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: baidu-tuiguang
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Xiao Jie
@@ -52,6 +52,46 @@ dependencies:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
54
  version: '5.0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: json
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '2.0'
62
+ - - ">="
63
+ - !ruby/object:Gem::Version
64
+ version: 2.0.2
65
+ type: :development
66
+ prerelease: false
67
+ version_requirements: !ruby/object:Gem::Requirement
68
+ requirements:
69
+ - - "~>"
70
+ - !ruby/object:Gem::Version
71
+ version: '2.0'
72
+ - - ">="
73
+ - !ruby/object:Gem::Version
74
+ version: 2.0.2
75
+ - !ruby/object:Gem::Dependency
76
+ name: openssl
77
+ requirement: !ruby/object:Gem::Requirement
78
+ requirements:
79
+ - - "~>"
80
+ - !ruby/object:Gem::Version
81
+ version: '2.0'
82
+ - - ">="
83
+ - !ruby/object:Gem::Version
84
+ version: 2.0.2
85
+ type: :development
86
+ prerelease: false
87
+ version_requirements: !ruby/object:Gem::Requirement
88
+ requirements:
89
+ - - "~>"
90
+ - !ruby/object:Gem::Version
91
+ version: '2.0'
92
+ - - ">="
93
+ - !ruby/object:Gem::Version
94
+ version: 2.0.2
55
95
  description: ''
56
96
  email:
57
97
  - iefsou@163.com