steamutils 1.1.24 → 1.1.26

Sign up to get free protection for your applications and to get access to all the features.
@@ -2,8 +2,8 @@
2
2
  <module type="WEB_MODULE" version="4">
3
3
  <component name="NewModuleRootManager">
4
4
  <content url="file://$MODULE_DIR$">
5
- <excludeFolder url="file://$MODULE_DIR$/.tmp" />
6
5
  <excludeFolder url="file://$MODULE_DIR$/temp" />
6
+ <excludeFolder url="file://$MODULE_DIR$/.tmp" />
7
7
  <excludeFolder url="file://$MODULE_DIR$/tmp" />
8
8
  </content>
9
9
  <orderEntry type="inheritedJdk" />
package/.idea/vcs.xml CHANGED
@@ -1,6 +1,6 @@
1
1
  <?xml version="1.0" encoding="UTF-8"?>
2
2
  <project version="4">
3
3
  <component name="VcsDirectoryMappings">
4
- <mapping directory="" vcs="Git" />
4
+ <mapping directory="$PROJECT_DIR$" vcs="Git" />
5
5
  </component>
6
6
  </project>
package/example.js CHANGED
@@ -11,94 +11,9 @@ import * as cherrio from "cheerio";
11
11
  // const user = new SteamUser(loginResult.cookie)
12
12
 
13
13
 
14
- // let cookies = `timezoneOffset=25200,0; _ga=GA1.2.187887660.1678676715; browserid=2823232875076552481; strInventoryLastContext=730_2; recentlyVisitedAppHubs=730%2C1859270; sessionid=83e614b63d78d0d2b4d93680; steamCountry=VN%7C3c7bd5df99a265a3e5102a225d1ab62d; steamLoginSecure=76561199040402348%7C%7CeyAidHlwIjogIkpXVCIsICJhbGciOiAiRWREU0EiIH0.eyAiaXNzIjogInI6MEQwM18yMjM1ODQ2MF8xM0YyNCIsICJzdWIiOiAiNzY1NjExOTkwNDA0MDIzNDgiLCAiYXVkIjogWyAid2ViIiBdLCAiZXhwIjogMTY4NTA2NTUzMiwgIm5iZiI6IDE2NzYzMzc4MDcsICJpYXQiOiAxNjg0OTc3ODA3LCAianRpIjogIjBEMkRfMjI5NkUxQkNfQzNERjUiLCAib2F0IjogMTY3ODY3NjgzMywgInJ0X2V4cCI6IDE2OTY4NjYxMDEsICJwZXIiOiAwLCAiaXBfc3ViamVjdCI6ICIxNC4yMzIuMjE0LjE4NiIsICJpcF9jb25maXJtZXIiOiAiMTQuMjMyLjIxNC4xODYiIH0.AhLuV9mQzv2j2CEgBe5ZpGyUqpHXogHFClfdsd3Ve7-Dt4aHagrJhOsgLewh1gmkO5ZewAN4FO4Y5S3D7u4FCw; webTradeEligibility=%7B%22allowed%22%3A1%2C%22allowed_at_time%22%3A0%2C%22steamguard_required_days%22%3A15%2C%22new_device_cooldown_days%22%3A0%2C%22time_checked%22%3A1684981543%7D; tsTradeOffersLastRead=1684321053`;
15
- // const user = new SteamUser("timezoneOffset=25200,0; _ga=GA1.2.187887660.1678676715; browserid=2823232875076552481; strInventoryLastContext=730_2; recentlyVisitedAppHubs=730%2C1859270; sessionid=83e614b63d78d0d2b4d93680; steamCountry=VN%7C3c7bd5df99a265a3e5102a225d1ab62d; steamLoginSecure=76561199040402348%7C%7CeyAidHlwIjogIkpXVCIsICJhbGciOiAiRWREU0EiIH0.eyAiaXNzIjogInI6MEQwM18yMjM1ODQ2MF8xM0YyNCIsICJzdWIiOiAiNzY1NjExOTkwNDA0MDIzNDgiLCAiYXVkIjogWyAid2ViIiBdLCAiZXhwIjogMTY4NTA2NTUzMiwgIm5iZiI6IDE2NzYzMzc4MDcsICJpYXQiOiAxNjg0OTc3ODA3LCAianRpIjogIjBEMkRfMjI5NkUxQkNfQzNERjUiLCAib2F0IjogMTY3ODY3NjgzMywgInJ0X2V4cCI6IDE2OTY4NjYxMDEsICJwZXIiOiAwLCAiaXBfc3ViamVjdCI6ICIxNC4yMzIuMjE0LjE4NiIsICJpcF9jb25maXJtZXIiOiAiMTQuMjMyLjIxNC4xODYiIH0.AhLuV9mQzv2j2CEgBe5ZpGyUqpHXogHFClfdsd3Ve7-Dt4aHagrJhOsgLewh1gmkO5ZewAN4FO4Y5S3D7u4FCw; webTradeEligibility=%7B%22allowed%22%3A1%2C%22allowed_at_time%22%3A0%2C%22steamguard_required_days%22%3A15%2C%22new_device_cooldown_days%22%3A0%2C%22time_checked%22%3A1684981543%7D; tsTradeOffersLastRead=1684321053")
16
- // const friendList = await user.getTradeURL()
17
-
18
- function CookieManager(cookie) {
19
- const _CookieObj = {}
20
- if (typeof cookie === "string") {
21
- cookie.split(";").forEach(function (_cookie) {
22
- setCookie(_cookie.split("=")[0].trim(), _cookie.split("=")[1].trim())
23
- })
24
- } else if (Array.isArray(cookie)) {
25
- cookie.forEach(function (_cookie) {
26
- if (typeof _cookie === "string") {
27
- setCookie(_cookie.split("=")[0].trim(), _cookie.split("=")[1].trim())
28
- } else {
29
- //to do
30
- }
31
- })
32
- } else if (typeof cookie === "object" && Object.keys(cookie).length) {
33
- for (const key in cookie) {
34
- setCookie(key, cookie[key])
35
- }
36
- } else {
37
- //to do
38
- }
39
-
40
- function setCookie(name, value) {
41
- const existedKey = Object.keys(_CookieObj).find(k => k.toLowerCase() === name.toLowerCase())
42
- if (existedKey) {
43
- delete _CookieObj[existedKey]
44
- }
45
- _CookieObj[name] = value
46
- }
47
-
48
- function setCookies(cookies) {
49
- if (Array.isArray(cookies)) {
50
- for (let cookie of cookies) {
51
- if (typeof cookie === "string") {
52
- cookie = cookie.split(";")[0].trim()
53
- setCookie(cookie.split("=")[0].trim(), cookie.split("=")[1].trim())
54
- }
55
- }
56
- }
57
- }
58
-
59
- function getCookie(name) {
60
- const existedKey = Object.keys(_CookieObj).find(k => k.toLowerCase() === name.toLowerCase())
61
- return _CookieObj[existedKey]
62
- }
63
-
64
-
65
- function toString() {
66
- return Object.keys(_CookieObj).map(k => `${k}=${_CookieObj[k]}`).join(';')
67
- }
68
-
69
- return {
70
- setCookie,
71
- setCookies,
72
- getCookie,
73
- toString,
74
- }
75
- }
76
-
77
- const cookiesObj = new CookieManager("steamLoginSecure=76561199490333788%7C%7CeyAidHlwIjogIkpXVCIsICJhbGciOiAiRWREU0EiIH0.eyAiaXNzIjogInI6MEQyRF8yMjhEQTcxQV9DOEZGRCIsICJzdWIiOiAiNzY1NjExOTk0OTAzMzM3ODgiLCAiYXVkIjogWyAid2ViIiwgIm1vYmlsZSIgXSwgImV4cCI6IDE2ODUwNjY0MzgsICJuYmYiOiAxNjc2MzQwMDAwLCAiaWF0IjogMTY4NDk4MDAwMCwgImp0aSI6ICIwRDJCXzIyOTZFMUJGXzUyNEU2IiwgIm9hdCI6IDE2ODQzODUwODksICJydF9leHAiOiAxNzAyNzQzMDU3LCAicGVyIjogMCwgImlwX3N1YmplY3QiOiAiMTQuMjMyLjIxNC4xODYiLCAiaXBfY29uZmlybWVyIjogIjE0LjIzMi4yMTQuMTg2IiB9.t884pdEgtcWk8Apy1HrzhQixy0u-RQFM-qb3JuaYMZjCwTRXdCnOZFbCxFe2JesC5xfFttHe4ufqtyizcEmVDA")
78
-
79
- let url = `my/tradeoffers/privacy`
80
- while (true) {
81
- const response = await axios({
82
- baseURL: "https://steamcommunity.com",
83
- url,
84
- validateStatus: () => true,
85
- headers: {
86
- cookie: cookiesObj.toString()
87
- },
88
- maxRedirects: 0,
89
- })
90
- cookiesObj.setCookies(response.headers["set-cookie"])
91
- if (response.status === 302) {
92
- url = response.headers.location
93
- console.log(`Redirect to ${url}`)
94
- } else if (response.status === 200) {
95
- const $ = cherrio.load(response.data)
96
- const trade_offer_access_url = $('#trade_offer_access_url').attr('value')
97
- console.log(trade_offer_access_url);
98
- return response
99
- } else {
100
- console.log(response.status);
101
- }
102
- }
14
+ let cookies = `timezoneOffset=25200,0; _ga=GA1.2.187887660.1678676715; browserid=2823232875076552481; strInventoryLastContext=730_2; recentlyVisitedAppHubs=730%2C1859270; sessionid=83e614b63d78d0d2b4d93680; steamCountry=VN%7C3c7bd5df99a265a3e5102a225d1ab62d; steamLoginSecure=76561199040402348%7C%7CeyAidHlwIjogIkpXVCIsICJhbGciOiAiRWREU0EiIH0.eyAiaXNzIjogInI6MEQwM18yMjM1ODQ2MF8xM0YyNCIsICJzdWIiOiAiNzY1NjExOTkwNDA0MDIzNDgiLCAiYXVkIjogWyAid2ViIiBdLCAiZXhwIjogMTY4NTA2NTUzMiwgIm5iZiI6IDE2NzYzMzc4MDcsICJpYXQiOiAxNjg0OTc3ODA3LCAianRpIjogIjBEMkRfMjI5NkUxQkNfQzNERjUiLCAib2F0IjogMTY3ODY3NjgzMywgInJ0X2V4cCI6IDE2OTY4NjYxMDEsICJwZXIiOiAwLCAiaXBfc3ViamVjdCI6ICIxNC4yMzIuMjE0LjE4NiIsICJpcF9jb25maXJtZXIiOiAiMTQuMjMyLjIxNC4xODYiIH0.AhLuV9mQzv2j2CEgBe5ZpGyUqpHXogHFClfdsd3Ve7-Dt4aHagrJhOsgLewh1gmkO5ZewAN4FO4Y5S3D7u4FCw; webTradeEligibility=%7B%22allowed%22%3A1%2C%22allowed_at_time%22%3A0%2C%22steamguard_required_days%22%3A15%2C%22new_device_cooldown_days%22%3A0%2C%22time_checked%22%3A1684981543%7D; tsTradeOffersLastRead=1684321053`;
15
+ const user = new SteamUser("timezoneOffset=25200,0; _ga=GA1.2.187887660.1678676715; browserid=2823232875076552481; strInventoryLastContext=730_2; recentlyVisitedAppHubs=730%2C1859270; sessionid=83e614b63d78d0d2b4d93680; steamCountry=VN%7C3c7bd5df99a265a3e5102a225d1ab62d; steamLoginSecure=76561199040402348%7C%7CeyAidHlwIjogIkpXVCIsICJhbGciOiAiRWREU0EiIH0.eyAiaXNzIjogInI6MEQwM18yMjM1ODQ2MF8xM0YyNCIsICJzdWIiOiAiNzY1NjExOTkwNDA0MDIzNDgiLCAiYXVkIjogWyAid2ViIiBdLCAiZXhwIjogMTY4NTA2NTUzMiwgIm5iZiI6IDE2NzYzMzc4MDcsICJpYXQiOiAxNjg0OTc3ODA3LCAianRpIjogIjBEMkRfMjI5NkUxQkNfQzNERjUiLCAib2F0IjogMTY3ODY3NjgzMywgInJ0X2V4cCI6IDE2OTY4NjYxMDEsICJwZXIiOiAwLCAiaXBfc3ViamVjdCI6ICIxNC4yMzIuMjE0LjE4NiIsICJpcF9jb25maXJtZXIiOiAiMTQuMjMyLjIxNC4xODYiIH0.AhLuV9mQzv2j2CEgBe5ZpGyUqpHXogHFClfdsd3Ve7-Dt4aHagrJhOsgLewh1gmkO5ZewAN4FO4Y5S3D7u4FCw; webTradeEligibility=%7B%22allowed%22%3A1%2C%22allowed_at_time%22%3A0%2C%22steamguard_required_days%22%3A15%2C%22new_device_cooldown_days%22%3A0%2C%22time_checked%22%3A1684981543%7D; tsTradeOffersLastRead=1684321053")
16
+ const result = await user.getInventory(730)
17
+ result.assets.forEach(r => console.log(r))
103
18
 
104
19
  })()
package/index.js CHANGED
@@ -1490,7 +1490,8 @@ class SteamUser {
1490
1490
 
1491
1491
  let redirectURL = null
1492
1492
  let response = null
1493
- let retry = 21
1493
+ let retry = 10
1494
+ let checkTooManyRequest = false
1494
1495
  while (--retry) {
1495
1496
  const config = {
1496
1497
  baseURL: SteamcommunityURL,
@@ -1511,8 +1512,10 @@ class SteamUser {
1511
1512
  while ((diff = (now = new Date().getTime()) - requestTimestamp) < 500) {
1512
1513
  await sleep(diff + 10)
1513
1514
  }
1514
- while ((diff = (now = new Date().getTime()) - tooManyRequestTimestamp) < 30000) {
1515
- await sleep(diff + 10)
1515
+ if (checkTooManyRequest) {
1516
+ while ((diff = (now = new Date().getTime()) - tooManyRequestTimestamp) < 30000) {
1517
+ await sleep(diff + 10)
1518
+ }
1516
1519
  }
1517
1520
  requestTimestamp = now
1518
1521
  response = await axios.request(config)
@@ -1526,6 +1529,7 @@ class SteamUser {
1526
1529
  } else if (response.status === 429) {
1527
1530
  console.log('Too Many Requests', config.url)
1528
1531
  tooManyRequestTimestamp = new Date().getTime()
1532
+ checkTooManyRequest = true
1529
1533
  await sleep(30000)
1530
1534
  } else if (response.status === 401) {
1531
1535
  console.log('Unauthorized')
@@ -5041,6 +5045,7 @@ class SteamUser {
5041
5045
  const tradehistory_date = tradehistory_date_el.text().trim()//24 Mar, 2023
5042
5046
 
5043
5047
  let timestamp = 0
5048
+ let timestampStr = `${tradehistory_date} ${tradehistory_timestamp}`
5044
5049
  const timestampMoment = moment(`${tradehistory_date} ${tradehistory_timestamp}`, `D MMM, YYYY h:mma`, true)
5045
5050
  if (!timestampMoment.isValid()) {
5046
5051
  console.log(`${tradehistory_date} ${tradehistory_timestamp}`);
@@ -5192,6 +5197,7 @@ class SteamUser {
5192
5197
 
5193
5198
  tradehistory.push({
5194
5199
  timestamp,
5200
+ timestampStr,
5195
5201
  description,
5196
5202
  plusminus,
5197
5203
  tradehistory_items,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "steamutils",
3
- "version": "1.1.24",
3
+ "version": "1.1.26",
4
4
  "main":"index.js",
5
5
  "dependencies": {
6
6
  "axios": "^1.3.4",
@@ -1,5 +0,0 @@
1
- <component name="ProjectCodeStyleConfiguration">
2
- <state>
3
- <option name="USE_PER_PROJECT_SETTINGS" value="true" />
4
- </state>
5
- </component>