Coder Social home page Coder Social logo

Comments (13)

yeahwell avatar yeahwell commented on August 17, 2024 1

Because you have start the local server before with node server.js
nop.
http://tiktok.com:8080/index.html
tiktok.com here meaning localhost?

from tiktok-signature.

carcabot avatar carcabot commented on August 17, 2024

Hi,

Yes, the local server is required in order to pass the latest checks added for signature generator.
Actually the local server is needed to simulate the real hostname.
This can also be achieved by jsdom but there are other checks where I can't find a solution for jsdom.

from tiktok-signature.

yeahwell avatar yeahwell commented on August 17, 2024

when i update to the newest code verison, when i am running
node browser.js "tiktok url" # service url
i get errors like that.
Error: net::ERR_CONNECTION_REFUSED at http://tiktok.com:8080/index.html
have i missing something? thank you

from tiktok-signature.

carcabot avatar carcabot commented on August 17, 2024

Because you have start the local server before with node server.js

from tiktok-signature.

yeahwell avatar yeahwell commented on August 17, 2024

thans for your patience. but i am meeting another obstacle.
i do running code in my mac book fine, it returns result like this.
{"statusCode":0,"body":{"pageState":{"regionAppId":1233,"os":"ios","region":"US","baseURL":"m.tiktok.com","appType":"m"

in my centos, it returns result nothing
{"statusCode":200,"contentType":"application/json","content":""}

node_modules dependency in different platform system makes that different result?
mac puppeteer -> .local-chromium is mac-722234
linux puppeteer -> .local-chromium is linux-722234

from tiktok-signature.

yeahwell avatar yeahwell commented on August 17, 2024

thans for your patience. but i am meeting another obstacle.
i do running code in my mac book fine, it returns result like this.
{"statusCode":0,"body":{"pageState":{"regionAppId":1233,"os":"ios","region":"US","baseURL":"m.tiktok.com","appType":"m"

in my centos, it returns result nothing
{"statusCode":200,"contentType":"application/json","content":""}

node_modules dependency in different platform system makes that different result?
mac puppeteer -> .local-chromium is mac-722234
linux puppeteer -> .local-chromium is linux-722234

i have solve this problem by dothing this.
args = [ "--no-sandbox", "--disable-setuid-sandbox", "--disable-infobars", "--window-position=0,0", "--ignore-certifcate-errors", "--ignore-certifcate-errors-spki-list", "--host-rules=MAP tiktok.com 127.0.0.1", "--proxy-server=socks://127.0.0.1:1080" ];

that's my problem of network. --proxy-server is necessery for me

from tiktok-signature.

carcabot avatar carcabot commented on August 17, 2024

So you had to create a proxy server on the same linux to make it work ?

from tiktok-signature.

yeahwell avatar yeahwell commented on August 17, 2024

So you had to create a proxy server on the same linux to make it work ?

i open one proxy server default in my mac. that's the reason mac works fine but linux don't work.
that will not be a problem for other people so you can ignore it.

from tiktok-signature.

harimambura avatar harimambura commented on August 17, 2024

Hi,

Yes, the local server is required in order to pass the latest checks added for signature generator.
Actually the local server is needed to simulate the real hostname.
This can also be achieved by jsdom but there are other checks where I can't find a solution for jsdom.

Signature generator made a simple checks like document.toString().indexOf('Document') === 12, window.history.toString() === "[object History]" and some other, it's only need to debug byted code in browser with watching on "v" array (at example in function function u(e) { v[x++] = e }) calling

from tiktok-signature.

carcabot avatar carcabot commented on August 17, 2024

@TrueCarry Oh, ok I understand what you are saying, your approach is good but what if I need to generate 1k signatures in a few seconds ?

Generating signature locally is much faster.

from tiktok-signature.

carcabot avatar carcabot commented on August 17, 2024

You did a nice job. Can you provide also an example of generating multiple signs using one instance ?

You can also pull a request to update the current code, I think your's is more scalable.

Greetings.

from tiktok-signature.

carcabot avatar carcabot commented on August 17, 2024

I've kept the local server but I changed their scope.

Please take a look to this branch. #listen-server and let me know what do you think.

Basically is a server which keep a single instance (your method) and listening to POST requests.
Once url received, a new signature is generated.

start the listen.js server
node listen.js

make a http post to http://127.0.0.1:8080/signature with url in body request.

from tiktok-signature.

carcabot avatar carcabot commented on August 17, 2024

I don't think that one tac token has a maximum signatures limit, most probably the limit is based on requested IP. If I'm wrong and the limit is based on each tac token then this can be handled somehow by puppeteer by generating fake IP's when generating.

I will keep checking if there's a limit anyway.

from tiktok-signature.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.