Cannot get chapters list from any URL

Issue #25 resolved
Phernost created an issue

All attempts to get any chapter list generate the same exception as of 11/27 6am EST.

org.jsoup.HttpStatusException: HTTP error fetching URL. Status=503, URL=http://bato.to/forums/index.php?app=core&module=global&section=login&do=process
    at org.jsoup.helper.HttpConnection$Response.execute(HttpConnection.java:537)
    at org.jsoup.helper.HttpConnection$Response.execute(HttpConnection.java:493)
    at org.jsoup.helper.HttpConnection.execute(HttpConnection.java:205)
    at main.MainFrame.Login(MainFrame.java:664)
    at main.MainFrame.jButton4ActionPerformed(MainFrame.java:1437)
    at main.MainFrame.access$400(MainFrame.java:47)
    at main.MainFrame$5.actionPerformed(MainFrame.java:320)
    at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
    at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
    at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
    at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
    at javax.swing.AbstractButton.doClick(AbstractButton.java:376)
    at javax.swing.AbstractButton.doClick(AbstractButton.java:356)
    at main.MainFrame.formWindowOpened(MainFrame.java:1098)
    at main.MainFrame.access$300(MainFrame.java:47)
    at main.MainFrame$4.windowOpened(MainFrame.java:298)
    at java.awt.AWTEventMulticaster.windowOpened(AWTEventMulticaster.java:339)
    at java.awt.Window.processWindowEvent(Window.java:2051)
    at javax.swing.JFrame.processWindowEvent(JFrame.java:305)
    at java.awt.Window.processEvent(Window.java:2013)
    at java.awt.Component.dispatchEventImpl(Component.java:4889)
    at java.awt.Container.dispatchEventImpl(Container.java:2294)
    at java.awt.Window.dispatchEventImpl(Window.java:2746)
    at java.awt.Component.dispatchEvent(Component.java:4711)
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
    at java.awt.EventQueue.access$500(EventQueue.java:97)
    at java.awt.EventQueue$3.run(EventQueue.java:709)
    at java.awt.EventQueue$3.run(EventQueue.java:703)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:90)
    at java.awt.EventQueue$4.run(EventQueue.java:731)
    at java.awt.EventQueue$4.run(EventQueue.java:729)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
    at org.GNOME.Accessibility.AtkWrapper$5.dispatchEvent(AtkWrapper.java:700)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
java.lang.IllegalArgumentException: Cookie map must not be null
    at org.jsoup.helper.Validate.notNull(Validate.java:26)
    at org.jsoup.helper.HttpConnection.cookies(HttpConnection.java:180)
    at main.MainFrame.GetChapters(MainFrame.java:760)
    at main.MainFrame.jButton4ActionPerformed(MainFrame.java:1439)
    at main.MainFrame.access$400(MainFrame.java:47)
    at main.MainFrame$5.actionPerformed(MainFrame.java:320)
    at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
    at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
    at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
    at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
    at javax.swing.AbstractButton.doClick(AbstractButton.java:376)
    at javax.swing.AbstractButton.doClick(AbstractButton.java:356)
    at main.MainFrame.formWindowOpened(MainFrame.java:1098)
    at main.MainFrame.access$300(MainFrame.java:47)
    at main.MainFrame$4.windowOpened(MainFrame.java:298)
    at java.awt.AWTEventMulticaster.windowOpened(AWTEventMulticaster.java:339)
    at java.awt.Window.processWindowEvent(Window.java:2051)
    at javax.swing.JFrame.processWindowEvent(JFrame.java:305)
    at java.awt.Window.processEvent(Window.java:2013)
    at java.awt.Component.dispatchEventImpl(Component.java:4889)
    at java.awt.Container.dispatchEventImpl(Container.java:2294)
    at java.awt.Window.dispatchEventImpl(Window.java:2746)
    at java.awt.Component.dispatchEvent(Component.java:4711)
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
    at java.awt.EventQueue.access$500(EventQueue.java:97)
    at java.awt.EventQueue$3.run(EventQueue.java:709)
    at java.awt.EventQueue$3.run(EventQueue.java:703)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:90)
    at java.awt.EventQueue$4.run(EventQueue.java:731)
    at java.awt.EventQueue$4.run(EventQueue.java:729)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
    at org.GNOME.Accessibility.AtkWrapper$5.dispatchEvent(AtkWrapper.java:700)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

Everything worked 8 hours ago.

app ver.: v3.5

OS: Ubuntu 17.04

java: openjdk 1.8.0_151

Comments (5)

  1. Red Squirrel repo owner

    Unfortunatly it seems that bato.to server migrated to cloudfare for an anti-bot protection. It could be hard to find a way to bypass the issue this time. Thank you for your report, I'll try to find a new way if possible

  2. Kira Shinka

    Last night batoto down for 2 hours and multiple times. According to their news, they got heavily DDOS, and some account cant access. Screenshot_11.jpg Cloudflare active for a while and heavily guarded, It seems hard indeed to baypass for 3rd Apps.

    I Hope you can fix this Red Squirrel. :'(

  3. Red Squirrel repo owner

    After a day of work I finally found a way :D In simple terms, the program will load the web page through an integrated web browser so as to bypass the Cloudflare web browser check. Thanks to this the program will be able to acquire a 4-hour cookie that will allow it to browse and download files from the bato.to server without issue.

    Expect for a new version very soon (just the time to fix the last things) ;D

  4. Log in to comment