Skip to content

LiuBigbin/Crawler.leetcode

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

leetcode accepted 算法提交代码爬取程序

        该程序用来爬取leetcode中自己已经accepted的算法代码,只爬取C语言或是C++提交的代码,其他语言的目前还不支持。还有,由于本人leetcode没有付费,所以只爬取所有没有付费的题目

        该程序用来爬取leetcode中自己已经accepted的算法代码。

        文件leetcodeCrawler/spider.java为爬虫程序,负责网络通讯

        文件leetcodeCrawler/Crawler4submissionDetailOrderByTag.java为主程序文件,负责其他的逻辑处理。

        运行程序时,需要先修改两个部分的代码:

        首先修改leetcodeCrawler/spider.java文件,先通过浏览器登陆到leetcode中,然后复制浏览器中的cookie(可以参考爬虫绕过登陆),将spider.java文件中的url_con.setRequestProperty("Cookie","your browser's cookie value")中的your browser's cookie value 替换为浏览器中的cookie值,然后保存。

        接下来,修改leetcodeCrawler/Crawler4submissionDetailOrderByTag.java文件,在文件的最后面,将代码Crawler4submissionDetailOrderByTag crawler = new Crawler4submissionDetailOrderByTag("your filedir path");中的your filedir path更改为你在磁盘中新建的文件夹的路径,所有的爬取数据将会在该文件夹里面,注意,必须保持该路径下的文件夹是空的文件夹,如果里面有文件请删除,修改后请保存。然后就可以运行程序了!

        注意,程序会先获得leetcode所有的tag信息,当获取成功后进一步的爬取每一个tag对应的问题代码,如果在获取tag信息失败或是tag信息获取不全时,直接重新运行程序就可以了,如果是tag已经获取得到,而是在爬取accepted问题代码的时候出现网络错误时,那么需要先将leetcodeCrawler/Crawler4submissionDetailOrderByTag.java文件中的 public void CrawlerLeetCodeUrl()方法前三行代码

if(!getTagInformation()){
			return;
		}

给注释掉,然后重新运行程序,程序会在上一次出现问题的地方开始爬取数据,因为程序支持断点爬取!!!

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages