致命二极管

dc-api的Python项目详细描述


dcinside-python3-api

python3致命的简单非官方dcinside api

# 프로그래밍 갤러리 글 헤더 무한 크롤링(빠름)fordocindc_api.board(board_id="programming",skip_contents=True):print(doc["id"],doc["title"],doc["author"],doc["date"])# => "131293"# => "땔감 벗어나는법.tip ㅇㅇ(10.42) 1:41"# => "왜 이거 안돼냐? ㅇㅇ(192.231) 1:40"# => ...
# 프로그래밍 갤러리 글내용, 이미지, 댓글 포함 무한 크롤링(느림)fordocindc_api.board(board_id="programming"):print(doc["contents"])# => "ㅗㅜㅑ\n미친다.."print(doc["images"])# => "[imgsrc1, imgsrc2, ...]"forcomindoc["comments"]:print(com["author"],com["contents"],com["date"])# => "ㅇㅇ(10.42) 나 남잔데 이런거 별로 10:20"
# 댓글쓰기dc_api.write_comment(board_id="programming",doc_id="149123",name="ㅇㅇ",pw="1234",contents="ㅇㅈ")# 로그인 후 글쓰기dc_api.login(id="SAMPLE_ID",pw="SAMPLE_PW")dc_api.write_document(board_id="programming",title="흠..좋네",contents="기부니가 좋네")dc_api.write_comment(board_id="programming",doc_id="149123",contents="설리")

依赖性

python3请求,lxml

用法

将dc_api.py放在工作目录中

或通过pip安装

pip3 install --user dc_api
importdc_api# full API# for doc in dc_api.board(board_id="programming", num=5, start_page=2, skip_contents=True):# full attributes of document and commentfordocindc_api.board(board_id="programming"):print(doc["id"])# => "835027"print(doc["title"])# => "땔감 벗어나는법.tip"print(doc["author"])# => "ㅇㅇ(10.20)"print(doc["has_image"])# => Trueprint(doc["time"])# => "1:41"print(doc["comment_num"])# => 3print(doc["voteup_num"])# => 0print(doc["view_num"])# => 14# Belows are None if parameter skip_contents=Trueprint(doc["contents"])# => "자바를 한다" print(doc["imgs"])# => ["http://static.dcinside.com/1o2i3joie", ...]print(doc["comments"])# => generatorforcomindoc["comments"]:print(com["id"])# => "123123"print(com["parent_id"])# => "123122"print(com["time"])# => "1:55"print(com["author"])# => "ㅇㅇ(192.23)"print(com["contents"])# => "개솔 ㄴㄴ"ifcom["dccon"]:print(com["dccon"])# => "http://dcimg5.dcinside.com/dccon.php?...."# print document contents, images, and commentscontents,images,comments=dc_api.document(board_id="programming",doc_no="835027")print(contents,images,comments)# => "ㅗㅜㅑ\nㅗㅜㅑ.. [imgsrc1, imgsrc2, ..] <generator>"# write docdoc_id=dc_api.write_document(board_id="programming",name="점진적자살",pw="1234",title="제목",contents="내용")# modify docdoc_id=dc_api.modify_document(board_id="programming",doc_id=doc_id,name="얄파고",pw="1234",title="수정된 제목",contents="수정된 내용")# delete docdc_api.remove_document(board_id="programming",doc_id=doc_id,pw="1234")# write commentcom_id=write_comment(board_id="programming",doc_no=doc_no,name="점진적자살",pw="1234",contents="아님")'''(Under development)# delete commentdc_api.removeComment(board_id="programming", is_miner=False, doc_no=doc_no,                      comment_no=comment_no, pw="1234")# upvotedc_api.upvote(board_id="programming", is_miner=False, doc_no=doc_no)# upvote many times(it needs openvpn)dc_api.upvote(board_id="programming", is_miner=False, doc_no=doc_no, num=10)'''# login# if you skip the sess parameter, it will use the default session(and it affects all other API calls that use default session)sess=dc_api.gen_session()dc_api.login(id="",pw="",sess=sess)# write doc with logined session# if you have skiped sess parameter of login API, you should also skip following API's sess parametersdoc_id=dc_api.write_document(sess=sess,board_id="programming",title="제목",contents="내용")# modify doc with logined sessiondoc_id=dc_api.modify_document(sess=sess,board_id="programming",doc_id=doc_id,title="수정된 제목",contents="수정된 내용")# write comment with logined session# if you have skiped sess parameter of login API, you should also skip following API's sess parameters# write commentcom_id=write_comment(sess=sess,board_id="programming",doc_id=doc_id,name="점진적자살",pw="1234",contents="아님")'''(Under development)# delete comment with logined sessiondc_api.removeComment(sess=sess, board_id="programming", is_miner=False,                      doc_no=doc_no, comment_no=comment_no)# upvote with logined sessiondc_api.upvote(board_id="programming", is_miner=False, doc_no=doc_no, sess=sess)# logoutdc_api.logout(sess)'''

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
Android中Twitter共享的java xAuth身份验证?   带有@XmlAnyAttribute和方法的java Bug?(使用JAXB-RI)   安卓 ArrayAdapter导致java。lang.NullPointerException   java如何使用JExel从现有excel文件中删除工作表   java树映射随机停止正确返回值   使用switch和scanner类java使用用户选择   java JCalendar多天选择   Java文件zip正在创建损坏的文件   Ajax调用中的java未定义错误   java处理JSON更改信息的最佳方法   java JNI不适用于AppKit线程   java在运行时为JTable的特定行设置背景色   java如何在for循环中添加按钮?   java在getclass()方法之后强制转换对象