从波士顿学院agora门户网站获取和解析数据的网络爬虫库

pygora-phchcc的Python项目详细描述


比哥拉

BC Agora Portal获取和分析数据的网络爬虫库。

入门(python 3):

pip install pygora-phchcc

示例

登录agora,下载并打印指向所有主题页的链接
frompygoraimport*session,gen_time=get_session("myAgoraUsername","myAgoraPassword",check_valid=True)# if gen_time == 0, we know something goes wrong (maybe you did not input the correct credential)print(gen_time)subjects=download_subjects(session,simple=True)# simple: each subject is a stringfori,lineinenumerate(subjects):print(i,line)# subjects = download_subjects(session) #eacg subject is a dict, with more information
缓存用户名和密码,这样就不必在脚本中显式地编写它们
frompygoraimport*# to set credential, run it once so that username & password are stored locallyset_credential("myAgoraUsername","myAgoraPassword")# to clear out credentialset_credential("","")
示例parse_subject_page:打印出所有生物课程(学校和科目代码可以在subject.txt中找到),前提是如果您运行了set_credential
frompygoraimport*session,gen_time=get_session(*get_credential(),check_valid=True)# if you are confident that your username & password are correct, do# session, gen_time = get_session(*get_credential())url=SUBJECT_URL.format('2MCAS','2BIOL')# get you a url stringresp=session.get(url)# use your session to HTTP get the urlcourses=parse_subject_page(resp)# parse the subject pageforcourseincourses:print(course)
示例parse_course_page:在课程页面上打印所有信息(课程代码可以在parse_subject_page的输出中找到)
frompygoraimport*session,gen_time=get_session(*get_credential())url=COURSE_URL.format('ACCT102101')# a dummy dict in this example, could be your data fetched from databaseinfo_dict=dict()resp=session.get(url)parse_course_page(resp,info_dict)# update the dictforkey,valueininfo_dict.items():print(key,value)

相关项目

后端EagleVision
后端New PEPS (planning)

加入开发团队/联系我们:

在github上打开一个问题,宣布您要处理的功能/错误
或通过电子邮件:(haochen)phchcc_at_gmail_dot_com
或在BC目录中搜索我们的姓名

特别感谢

特别感谢那些让eaglevision(这个项目的原型)和pygora活着的人(名字按字母顺序排列):

Baichuan (Patrick) Guo——最初的“诚实团队”
David Shen——eaglevision开发团队
Estevan Feliz——最初的“诚实团队”&eaglevision dev团队
Roger Wang——eaglevision开发团队
Yuning (Tommy) Yang——最初的“诚实团队”
Yuxuan (Jacky) Jin——eaglevision开发团队

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

推荐PyPI第三方库


热门话题
ArrayList Java中的搜索字符串   另一个web应用程序的java访问会话   另一个应用程序中的活动和服务之间的java通信   java根据Json字符串类型将Json字符串转换为对象   eclipse如何解决java中的错误异常。lang.NoSuchMethodError:'java。字符串javax。摆动JOptionPane。showInputDialog(java.lang.String)'   线程“main”java中的安卓异常。lang.NoClassDefFoundError:org/codehaus/jackson/JsonParseException   java如何在安卓 emulator上显示Mat图像?使用NDK   Java在本地读取测试源文件,但在服务器上读取失败   java dowhile循环用于计算输入数字中的数字。故障排除代码   JAva初学者在编写获取成本的方法时遇到困难   java是shell游戏。我如何让物体移动,特别是在特定的曲线上,但顺序是随机的?   java如何区分两个同名的JButton   java为什么我在Spring Boot中需要一个接口?   java将文件路径插入数据库将删除\   使用InterfaceType初始化java对象   java如何部署一个分为Angular、Spring Boot和MySQL的项目?   java如何使用Symja解决不等式?