GFGScraper Implementation#36
Conversation
…rofile stats scraping
|
Someone is attempting to deploy a commit to the ashishkaranam06-9122's projects Team on Vercel. A member of the Team first needs to authorize it. |
|
@ashish-066 Please check the changes and ping me if further changes are required |
|
did you test the changes |
|
I tested the backend with 3 of my IDs and the frontend itself works fine If you are expecting something else we can add that coz we got all the data |
|
If you are expecting something else we can add that coz we got all the data |
|
Well we can get the heatmap if submission and user related details like dob and stuff But ig heatmap is the only thing we could add |
|
i didnt get you. |
|
😭😭 Well even gfg shows that chart on user profile so we can fetch that chart data and then showcase in your app I can't explain any better 💔😭 |
|
you think the person who made this thing doesn't know what a heatmap means?i am asking what do you mean by other stuff.put it perfectly.before i test it i atleast need to be sure that you are getting the data correctly.mention what all data you are getting |
|
Here they are, I have added the xtra ones like easy question attempted,hard ones attempted,medium ones attempted Current Streak,longest streak , total solved You can choose the changes you want |
|
can you attach the results for the tests you done |
Lightweight Parsing Strategy (
GfgClient.java):Instead of spinning up a memory-heavy headless browser (e.g., Playwright) that causes server crashes in low-memory environments, we implemented a dual-mode parser using Jsoup:
total_problems_solvedand streak metrics) directly from modern Next.js GFG profiles.Java,C++, andPythonby reading the raw HTML body.Backend & Controller Integration (
PlatformSyncService.java,PlatformVerificationController.java):GfgClientinto the platforms map, enabling automated batch syncing for GeeksforGeeks accounts."gfg"on the verification/startendpoint. Since GFG doesn't expose clean public submission feeds, it returnsautoVerify: trueif the profile exists, skipping the manual task-solving step.Frontend Integration (
OnboardingPage.jsx,ProfilePage.jsx,api.js):#2E8B57, placeholder, logo badge) to both the Onboarding wizard and the User Profile view.api.jsto ensure theautoVerifyboolean gets passed to the UI components.Security & Session Bugfix (
JwtAuthFilter.java):JwtAuthFilterwas rejecting all requests with a401, preventing users from logging in or registering. The filter now allows requests to public endpoints (like/auth/generateTokenand/auth/signup/*) to bypass verification errors anonymously.Local Cleanup:
nikhil.html,gfg_script.txt, etc.) to keep the pull request 100% clean.Issue #2