import requests
import bs4
url = "http://oscar-lab.org/people/~zren/"
response = requests.get(url)
response.status_code
200
response.encoding
'ISO-8859-1'
response.apparent_encoding
'utf-8'
response.encoding = response.apparent_encoding
print(response.text)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>Zhilei Ren</title> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> </head> <body> <p><img src="image/ren.png" alt="Zhilei Ren" title=""></p> <p>Zhilei Ren (任志磊), associate professossor at <a href="http://oscar-lab.org/">OSCAR</a> lab, <a href="http://www.dlut.edu.cn/en/">Dalian University of Technology</a>.</p> <p><a href="index_chn.htm">[中文]</a></p> <hr> <h1>Research Interests</h1> <p>Evolutionary Computation, Automatic Algorithm Configuration, Data Mining, and Data Analysis in Software Engineering</p> <h1>Brief Biography</h1> <ul> <li>Sep. 2009 - Mar. 2013 Ph.D candidate Dalian University of Technology, supervised by Prof. <a href="http://faculty.dlut.edu.cn/jianghe/en/index.htm">He Jiang</a> </li> <li>Sep. 2007 - Jun. 2009 MS candidate Dalian University of Technology, supervised by Prof. <a href="http://faculty.dlut.edu.cn/jianghe/en/index.htm">He Jiang</a> </li> <li>Sep. 2003 - Jul. 2007 BS (software engineering) Dalian University of Technology</li> </ul> <h1>Publications</h1> <h3>Journal Papers</h3> <ul> <li><strong>Zhilei Ren</strong>, He Jiang, Jifeng Xuan, Shuwei Zhang, Zhongxuan Luo. Feature based problem hardness understanding for requirements engineering. Science China Information Sciences, 60(3), 032105, 2017. </li> <li><strong>Zhilei Ren</strong>, He Jiang, Shuwei Zhang, Jingxuan Zhang, Zhongxuan Luo. Boosting Local Search with Lagrangian Relaxation. Journal of Heuristics. Online. </li> <li><strong>Zhilei Ren</strong>, He Jiang, Jifeng Xuan, Yan Hu, Zhongxuan Luo. New Insights Into Diversification of Hyper-Heuristics. IEEE Transactions on Cybernetics. Online. </li> <li><strong>Zhilei Ren</strong>, He Jiang, Jifeng Xuan, Zhongxuan Luo. Hyper-Heuristics with Low Level Parameter Adaptation. Evolutionary Computation, vol. 20, no. 2, pp. 189-227.</li> <li><strong>Zhilei Ren</strong>, He Jiang, Jifeng Xuan, Zhongxuan Luo. An Accelerated Limit Crossing Based Multilevel Algorithm for the p-Median Problem. IEEE Transactions on Systems, Man, and Cybernetics, Part B: Cybernetics, vol. 42, no. 4, pp. 1187-1202.</li> <li>He Jiang, <strong>Zhilei Ren</strong>, Jifeng Xuan, Xindong Wu. Extracting Elite Pairwise Constraints for Clustering. Neurocomputing. Online.</li> <li>Jifeng Xuan, He Jiang, <strong>Zhilei Ren</strong>, Zhongxuan Luo. Solving the Large Scale Next Release Problem with a Backbone Based Multilevel Algorithm. IEEE Transactions on Software Engineering, vol. 38, no. 5, Sept.-Oct. 2012, pp. 1195-1212.</li> </ul> <h3>Conference Papers</h3> <ul> <li><strong>Zhilei Ren</strong>, Changlin Liu, Xusheng Xiao, He Jiang, and Tao Xie. Root Cause Localization for Unreproducible Builds via Causality Analysis over System Call Tracing. The 34th IEEE/ACM International Conference on Automated Software Engineering (ASE 2019). Accepted.</li> <li><strong>Zhilei Ren</strong>, He Jiang, Jifeng Xuan, and Zijiang Yang. Automated Localization for Unreproducible Builds. The 40th IEEE International Conference on Software Engineering (ICSE 2018), Gothenburg, Sweden. May 27 - June 3, 2018, pp. 71-81.</li> <li><strong>Zhilei Ren</strong>, He Jiang, Jifeng Xuan, Ke Tang, Yan Hu. Analyzing Inter-objective Relationships: A Case Study of Software Upgradability. Proceedings of the 14th International Conference on Parallel Problem Solving from Nature (PPSN 2016), Edinburgh, Scotland, UK. September 17-21, 2016, pp. 442-452.</li> <li> <strong>Zhilei Ren</strong>, He Jiang, Jifeng Xuan, Shuwei Zhang, Zhongxuan Luo. Learning from Evolved Next Release Problem Instances. Proceedings of the 2014 conference companion on Genetic and evolutionary computation companion, Vancouver, Canada. July 11-16, 2014, pp. 189-190.</li> <li>Jifeng Xuan, He Jiang, <strong>Zhilei Ren</strong>, Weiqin Zou. Developer Prioritization in Bug Repositories. Proceedings of 34th International Conference on Software Engineering (ICSE 2012), Zurich, Switzerland. June 2-9, 2012, pp. 25-35.</li> <li><strong>Zhilei Ren</strong>, He Jiang, Jifeng Xuan, Zhongxuan Luo. Ant Based Hyper Heuristics with Space Reduction: A Case Study of the p-Median Problem. Proceedings of 11th International Conference on Parallel Problem Solving From Nature (PPSN 2010), Krakow, Poland. September 11-15, 2010, pp. 546-555.</li> <li>Jifeng Xuan, He Jiang, <strong>Zhilei Ren</strong>, Jun Yan, Zhongxuan Luo. Automatic Bug Triage using Semi-Supervised Text Classification. Proceedings of 22nd International Conference on Software Engineering and Knowledge Engineering (SEKE 2010), Redwood City, California, USA. July 1-3, 2010, pp. 209-214.</li> <li>He Jiang, Jifeng Xuan, <strong>Zhilei Ren</strong>. Approximate Backbone Based Multilevel Algorithm for Next Release Problem. Proceedings of 12th Annual Conference on Genetic and Evolutionary Computation. (GECCO 2010), Portland, Oregon, USA. ACM Press, July 7-11, 2010, pp. 1333-1340.</li> <li>He Jiang, <strong>Zhilei Ren</strong>, Yan Hu. A sampling based fant for the 3-dimensional assignment problem. Proceedings of 2008 IEEE Congress on Evolutionary Computation (CEC 2008), Hongkong, China. IEEE Computer Society, 2008, pp. 4118-4124.</li> </ul> <h1>Activities</h1> <ul> <li>Publication chair, IEA/AIE 2012 (The 25th International Conference on Industrial, Engineering & Other Applications of Applied Intelligent Systems)</li> <li>Reviewer, IEA/AIE 2012 (The 25th International Conference on Industrial, Engineering & Other Applications of Applied Intelligent Systems)</li> <li>Reviewer, ICM 2011 (The International Conference of Information Technology, Computer Engineering and Management Sciences)</li> <li>Reviewer, Applied Intelligence</li> <li>Co-reviewer, KBS (Knowledge-Based Systems)</li> <li>Co-reviewer, IJACT (International Journal of Advancements in Computing Technology)</li> <li>Co-reviewer, ISI 2012 (IEEE International Conference on Intelligence and Security Informatics)</li> <li>Co-reviewer, CSE 2011 (The 14th IEEE International Conference on Computational Science and Engineering)</li> <li>Co-reviewer, Journal of Software</li> </ul> <h1>Awards</h1> <ul> <li>2018: ACM SIGSOFT Distinguished Paper Award</li> <li>2008: Outstanding Master's Candidate in the Software School of Dalian University of Technology</li> <li>2008: First-class Scholarship at Dalian University of Technology </li> <li>2007: Outstanding Graduate of Dalian City </li> <li>2006: Scholarship Sponsored by Dalian ShiDe Group</li> <li>2006: Outstanding Student of Liaoning Province</li> <li>2006: First-class Scholarship at Dalian University of Technology</li> <li>2005: Citi Bank's Financial Information Technology Scholarship</li> <li>2005: First-class Scholarship at Dalian University of Technology</li> <li>2004: Third-class NOK Scholarship</li> <li>2004: First-class Scholarship at Dalian University of Technology</li> </ul> <h1>Teaching Assistant</h1> <ul> <li>Compiler Principles, Spring 2009</li> <li>Compiler Principles, Autumn 2008</li> <li>Compiler Principles, Autumn 2007</li> </ul> <h1>Teaching Materials</h1> <ul> <li><a href="./compiler">Compiler Principles Slides</a></li> <li><a href="./uml">Unified Modeling Language</a></li> <li><a href="https://bitbucket.org/rezilla/open-lecture-notes">Open Source Course</a></li> <li><a href="./files/scientific-writing.pdf">Scientific Writing</a> </li> <li><a href="./files/intro.pptx">Introduction Slides for Freshmen (in Chinese)</a></li> <li><a href="./ddb">Distributed Database</a></li> </ul> <hr> <p><img src="image/vim_powered_blueblack.gif" alt="vim powered" title=""> Last modified on 2019-09-22</p> </body> </html>
doc = bs4.BeautifulSoup(response.text)
print(doc.prettify())
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title> Zhilei Ren </title> <meta content="text/html; charset=utf-8" http-equiv="Content-Type"/> </head> <body> <p> <img alt="Zhilei Ren" src="image/ren.png" title=""/> </p> <p> Zhilei Ren (任志磊), associate professossor at <a href="http://oscar-lab.org/"> OSCAR </a> lab, <a href="http://www.dlut.edu.cn/en/"> Dalian University of Technology </a> . </p> <p> <a href="index_chn.htm"> [中文] </a> </p> <hr/> <h1> Research Interests </h1> <p> Evolutionary Computation, Automatic Algorithm Configuration, Data Mining, and Data Analysis in Software Engineering </p> <h1> Brief Biography </h1> <ul> <li> Sep. 2009 - Mar. 2013 Ph.D candidate Dalian University of Technology, supervised by Prof. <a href="http://faculty.dlut.edu.cn/jianghe/en/index.htm"> He Jiang </a> </li> <li> Sep. 2007 - Jun. 2009 MS candidate Dalian University of Technology, supervised by Prof. <a href="http://faculty.dlut.edu.cn/jianghe/en/index.htm"> He Jiang </a> </li> <li> Sep. 2003 - Jul. 2007 BS (software engineering) Dalian University of Technology </li> </ul> <h1> Publications </h1> <h3> Journal Papers </h3> <ul> <li> <strong> Zhilei Ren </strong> , He Jiang, Jifeng Xuan, Shuwei Zhang, Zhongxuan Luo. Feature based problem hardness understanding for requirements engineering. Science China Information Sciences, 60(3), 032105, 2017. </li> <li> <strong> Zhilei Ren </strong> , He Jiang, Shuwei Zhang, Jingxuan Zhang, Zhongxuan Luo. Boosting Local Search with Lagrangian Relaxation. Journal of Heuristics. Online. </li> <li> <strong> Zhilei Ren </strong> , He Jiang, Jifeng Xuan, Yan Hu, Zhongxuan Luo. New Insights Into Diversification of Hyper-Heuristics. IEEE Transactions on Cybernetics. Online. </li> <li> <strong> Zhilei Ren </strong> , He Jiang, Jifeng Xuan, Zhongxuan Luo. Hyper-Heuristics with Low Level Parameter Adaptation. Evolutionary Computation, vol. 20, no. 2, pp. 189-227. </li> <li> <strong> Zhilei Ren </strong> , He Jiang, Jifeng Xuan, Zhongxuan Luo. An Accelerated Limit Crossing Based Multilevel Algorithm for the p-Median Problem. IEEE Transactions on Systems, Man, and Cybernetics, Part B: Cybernetics, vol. 42, no. 4, pp. 1187-1202. </li> <li> He Jiang, <strong> Zhilei Ren </strong> , Jifeng Xuan, Xindong Wu. Extracting Elite Pairwise Constraints for Clustering. Neurocomputing. Online. </li> <li> Jifeng Xuan, He Jiang, <strong> Zhilei Ren </strong> , Zhongxuan Luo. Solving the Large Scale Next Release Problem with a Backbone Based Multilevel Algorithm. IEEE Transactions on Software Engineering, vol. 38, no. 5, Sept.-Oct. 2012, pp. 1195-1212. </li> </ul> <h3> Conference Papers </h3> <ul> <li> <strong> Zhilei Ren </strong> , Changlin Liu, Xusheng Xiao, He Jiang, and Tao Xie. Root Cause Localization for Unreproducible Builds via Causality Analysis over System Call Tracing. The 34th IEEE/ACM International Conference on Automated Software Engineering (ASE 2019). Accepted. </li> <li> <strong> Zhilei Ren </strong> , He Jiang, Jifeng Xuan, and Zijiang Yang. Automated Localization for Unreproducible Builds. The 40th IEEE International Conference on Software Engineering (ICSE 2018), Gothenburg, Sweden. May 27 - June 3, 2018, pp. 71-81. </li> <li> <strong> Zhilei Ren </strong> , He Jiang, Jifeng Xuan, Ke Tang, Yan Hu. Analyzing Inter-objective Relationships: A Case Study of Software Upgradability. Proceedings of the 14th International Conference on Parallel Problem Solving from Nature (PPSN 2016), Edinburgh, Scotland, UK. September 17-21, 2016, pp. 442-452. </li> <li> <strong> Zhilei Ren </strong> , He Jiang, Jifeng Xuan, Shuwei Zhang, Zhongxuan Luo. Learning from Evolved Next Release Problem Instances. Proceedings of the 2014 conference companion on Genetic and evolutionary computation companion, Vancouver, Canada. July 11-16, 2014, pp. 189-190. </li> <li> Jifeng Xuan, He Jiang, <strong> Zhilei Ren </strong> , Weiqin Zou. Developer Prioritization in Bug Repositories. Proceedings of 34th International Conference on Software Engineering (ICSE 2012), Zurich, Switzerland. June 2-9, 2012, pp. 25-35. </li> <li> <strong> Zhilei Ren </strong> , He Jiang, Jifeng Xuan, Zhongxuan Luo. Ant Based Hyper Heuristics with Space Reduction: A Case Study of the p-Median Problem. Proceedings of 11th International Conference on Parallel Problem Solving From Nature (PPSN 2010), Krakow, Poland. September 11-15, 2010, pp. 546-555. </li> <li> Jifeng Xuan, He Jiang, <strong> Zhilei Ren </strong> , Jun Yan, Zhongxuan Luo. Automatic Bug Triage using Semi-Supervised Text Classification. Proceedings of 22nd International Conference on Software Engineering and Knowledge Engineering (SEKE 2010), Redwood City, California, USA. July 1-3, 2010, pp. 209-214. </li> <li> He Jiang, Jifeng Xuan, <strong> Zhilei Ren </strong> . Approximate Backbone Based Multilevel Algorithm for Next Release Problem. Proceedings of 12th Annual Conference on Genetic and Evolutionary Computation. (GECCO 2010), Portland, Oregon, USA. ACM Press, July 7-11, 2010, pp. 1333-1340. </li> <li> He Jiang, <strong> Zhilei Ren </strong> , Yan Hu. A sampling based fant for the 3-dimensional assignment problem. Proceedings of 2008 IEEE Congress on Evolutionary Computation (CEC 2008), Hongkong, China. IEEE Computer Society, 2008, pp. 4118-4124. </li> </ul> <h1> Activities </h1> <ul> <li> Publication chair, IEA/AIE 2012 (The 25th International Conference on Industrial, Engineering & Other Applications of Applied Intelligent Systems) </li> <li> Reviewer, IEA/AIE 2012 (The 25th International Conference on Industrial, Engineering & Other Applications of Applied Intelligent Systems) </li> <li> Reviewer, ICM 2011 (The International Conference of Information Technology, Computer Engineering and Management Sciences) </li> <li> Reviewer, Applied Intelligence </li> <li> Co-reviewer, KBS (Knowledge-Based Systems) </li> <li> Co-reviewer, IJACT (International Journal of Advancements in Computing Technology) </li> <li> Co-reviewer, ISI 2012 (IEEE International Conference on Intelligence and Security Informatics) </li> <li> Co-reviewer, CSE 2011 (The 14th IEEE International Conference on Computational Science and Engineering) </li> <li> Co-reviewer, Journal of Software </li> </ul> <h1> Awards </h1> <ul> <li> 2018: ACM SIGSOFT Distinguished Paper Award </li> <li> 2008: Outstanding Master's Candidate in the Software School of Dalian University of Technology </li> <li> 2008: First-class Scholarship at Dalian University of Technology </li> <li> 2007: Outstanding Graduate of Dalian City </li> <li> 2006: Scholarship Sponsored by Dalian ShiDe Group </li> <li> 2006: Outstanding Student of Liaoning Province </li> <li> 2006: First-class Scholarship at Dalian University of Technology </li> <li> 2005: Citi Bank's Financial Information Technology Scholarship </li> <li> 2005: First-class Scholarship at Dalian University of Technology </li> <li> 2004: Third-class NOK Scholarship </li> <li> 2004: First-class Scholarship at Dalian University of Technology </li> </ul> <h1> Teaching Assistant </h1> <ul> <li> Compiler Principles, Spring 2009 </li> <li> Compiler Principles, Autumn 2008 </li> <li> Compiler Principles, Autumn 2007 </li> </ul> <h1> Teaching Materials </h1> <ul> <li> <a href="./compiler"> Compiler Principles Slides </a> </li> <li> <a href="./uml"> Unified Modeling Language </a> </li> <li> <a href="https://bitbucket.org/rezilla/open-lecture-notes"> Open Source Course </a> </li> <li> <a href="./files/scientific-writing.pdf"> Scientific Writing </a> </li> <li> <a href="./files/intro.pptx"> Introduction Slides for Freshmen (in Chinese) </a> </li> <li> <a href="./ddb"> Distributed Database </a> </li> </ul> <hr/> <p> <img alt="vim powered" src="image/vim_powered_blueblack.gif" title=""/> Last modified on 2019-09-22 </p> </body> </html>
doc.a # 文档中的首个a节点
<a href="http://oscar-lab.org/">OSCAR</a>
doc.title # 文档首个(唯一)标题
<title>Zhilei Ren</title>
doc.title.parent # 使用parent遍历父节点
<head> <title>Zhilei Ren</title> <meta content="text/html; charset=utf-8" http-equiv="Content-Type"/> </head>
list(doc.title.parents) # 反向遍历祖先节点
[<head> <title>Zhilei Ren</title> <meta content="text/html; charset=utf-8" http-equiv="Content-Type"/> </head>, <html> <head> <title>Zhilei Ren</title> <meta content="text/html; charset=utf-8" http-equiv="Content-Type"/> </head> <body> <p><img alt="Zhilei Ren" src="image/ren.png" title=""/></p> <p>Zhilei Ren (任志磊), associate professossor at <a href="http://oscar-lab.org/">OSCAR</a> lab, <a href="http://www.dlut.edu.cn/en/">Dalian University of Technology</a>.</p> <p><a href="index_chn.htm">[中文]</a></p> <hr/> <h1>Research Interests</h1> <p>Evolutionary Computation, Automatic Algorithm Configuration, Data Mining, and Data Analysis in Software Engineering</p> <h1>Brief Biography</h1> <ul> <li>Sep. 2009 - Mar. 2013 Ph.D candidate Dalian University of Technology, supervised by Prof. <a href="http://faculty.dlut.edu.cn/jianghe/en/index.htm">He Jiang</a> </li> <li>Sep. 2007 - Jun. 2009 MS candidate Dalian University of Technology, supervised by Prof. <a href="http://faculty.dlut.edu.cn/jianghe/en/index.htm">He Jiang</a> </li> <li>Sep. 2003 - Jul. 2007 BS (software engineering) Dalian University of Technology</li> </ul> <h1>Publications</h1> <h3>Journal Papers</h3> <ul> <li><strong>Zhilei Ren</strong>, He Jiang, Jifeng Xuan, Shuwei Zhang, Zhongxuan Luo. Feature based problem hardness understanding for requirements engineering. Science China Information Sciences, 60(3), 032105, 2017. </li> <li><strong>Zhilei Ren</strong>, He Jiang, Shuwei Zhang, Jingxuan Zhang, Zhongxuan Luo. Boosting Local Search with Lagrangian Relaxation. Journal of Heuristics. Online. </li> <li><strong>Zhilei Ren</strong>, He Jiang, Jifeng Xuan, Yan Hu, Zhongxuan Luo. New Insights Into Diversification of Hyper-Heuristics. IEEE Transactions on Cybernetics. Online. </li> <li><strong>Zhilei Ren</strong>, He Jiang, Jifeng Xuan, Zhongxuan Luo. Hyper-Heuristics with Low Level Parameter Adaptation. Evolutionary Computation, vol. 20, no. 2, pp. 189-227.</li> <li><strong>Zhilei Ren</strong>, He Jiang, Jifeng Xuan, Zhongxuan Luo. An Accelerated Limit Crossing Based Multilevel Algorithm for the p-Median Problem. IEEE Transactions on Systems, Man, and Cybernetics, Part B: Cybernetics, vol. 42, no. 4, pp. 1187-1202.</li> <li>He Jiang, <strong>Zhilei Ren</strong>, Jifeng Xuan, Xindong Wu. Extracting Elite Pairwise Constraints for Clustering. Neurocomputing. Online.</li> <li>Jifeng Xuan, He Jiang, <strong>Zhilei Ren</strong>, Zhongxuan Luo. Solving the Large Scale Next Release Problem with a Backbone Based Multilevel Algorithm. IEEE Transactions on Software Engineering, vol. 38, no. 5, Sept.-Oct. 2012, pp. 1195-1212.</li> </ul> <h3>Conference Papers</h3> <ul> <li><strong>Zhilei Ren</strong>, Changlin Liu, Xusheng Xiao, He Jiang, and Tao Xie. Root Cause Localization for Unreproducible Builds via Causality Analysis over System Call Tracing. The 34th IEEE/ACM International Conference on Automated Software Engineering (ASE 2019). Accepted.</li> <li><strong>Zhilei Ren</strong>, He Jiang, Jifeng Xuan, and Zijiang Yang. Automated Localization for Unreproducible Builds. The 40th IEEE International Conference on Software Engineering (ICSE 2018), Gothenburg, Sweden. May 27 - June 3, 2018, pp. 71-81.</li> <li><strong>Zhilei Ren</strong>, He Jiang, Jifeng Xuan, Ke Tang, Yan Hu. Analyzing Inter-objective Relationships: A Case Study of Software Upgradability. Proceedings of the 14th International Conference on Parallel Problem Solving from Nature (PPSN 2016), Edinburgh, Scotland, UK. September 17-21, 2016, pp. 442-452.</li> <li> <strong>Zhilei Ren</strong>, He Jiang, Jifeng Xuan, Shuwei Zhang, Zhongxuan Luo. Learning from Evolved Next Release Problem Instances. Proceedings of the 2014 conference companion on Genetic and evolutionary computation companion, Vancouver, Canada. July 11-16, 2014, pp. 189-190.</li> <li>Jifeng Xuan, He Jiang, <strong>Zhilei Ren</strong>, Weiqin Zou. Developer Prioritization in Bug Repositories. Proceedings of 34th International Conference on Software Engineering (ICSE 2012), Zurich, Switzerland. June 2-9, 2012, pp. 25-35.</li> <li><strong>Zhilei Ren</strong>, He Jiang, Jifeng Xuan, Zhongxuan Luo. Ant Based Hyper Heuristics with Space Reduction: A Case Study of the p-Median Problem. Proceedings of 11th International Conference on Parallel Problem Solving From Nature (PPSN 2010), Krakow, Poland. September 11-15, 2010, pp. 546-555.</li> <li>Jifeng Xuan, He Jiang, <strong>Zhilei Ren</strong>, Jun Yan, Zhongxuan Luo. Automatic Bug Triage using Semi-Supervised Text Classification. Proceedings of 22nd International Conference on Software Engineering and Knowledge Engineering (SEKE 2010), Redwood City, California, USA. July 1-3, 2010, pp. 209-214.</li> <li>He Jiang, Jifeng Xuan, <strong>Zhilei Ren</strong>. Approximate Backbone Based Multilevel Algorithm for Next Release Problem. Proceedings of 12th Annual Conference on Genetic and Evolutionary Computation. (GECCO 2010), Portland, Oregon, USA. ACM Press, July 7-11, 2010, pp. 1333-1340.</li> <li>He Jiang, <strong>Zhilei Ren</strong>, Yan Hu. A sampling based fant for the 3-dimensional assignment problem. Proceedings of 2008 IEEE Congress on Evolutionary Computation (CEC 2008), Hongkong, China. IEEE Computer Society, 2008, pp. 4118-4124.</li> </ul> <h1>Activities</h1> <ul> <li>Publication chair, IEA/AIE 2012 (The 25th International Conference on Industrial, Engineering & Other Applications of Applied Intelligent Systems)</li> <li>Reviewer, IEA/AIE 2012 (The 25th International Conference on Industrial, Engineering & Other Applications of Applied Intelligent Systems)</li> <li>Reviewer, ICM 2011 (The International Conference of Information Technology, Computer Engineering and Management Sciences)</li> <li>Reviewer, Applied Intelligence</li> <li>Co-reviewer, KBS (Knowledge-Based Systems)</li> <li>Co-reviewer, IJACT (International Journal of Advancements in Computing Technology)</li> <li>Co-reviewer, ISI 2012 (IEEE International Conference on Intelligence and Security Informatics)</li> <li>Co-reviewer, CSE 2011 (The 14th IEEE International Conference on Computational Science and Engineering)</li> <li>Co-reviewer, Journal of Software</li> </ul> <h1>Awards</h1> <ul> <li>2018: ACM SIGSOFT Distinguished Paper Award</li> <li>2008: Outstanding Master's Candidate in the Software School of Dalian University of Technology</li> <li>2008: First-class Scholarship at Dalian University of Technology </li> <li>2007: Outstanding Graduate of Dalian City </li> <li>2006: Scholarship Sponsored by Dalian ShiDe Group</li> <li>2006: Outstanding Student of Liaoning Province</li> <li>2006: First-class Scholarship at Dalian University of Technology</li> <li>2005: Citi Bank's Financial Information Technology Scholarship</li> <li>2005: First-class Scholarship at Dalian University of Technology</li> <li>2004: Third-class NOK Scholarship</li> <li>2004: First-class Scholarship at Dalian University of Technology</li> </ul> <h1>Teaching Assistant</h1> <ul> <li>Compiler Principles, Spring 2009</li> <li>Compiler Principles, Autumn 2008</li> <li>Compiler Principles, Autumn 2007</li> </ul> <h1>Teaching Materials</h1> <ul> <li><a href="./compiler">Compiler Principles Slides</a></li> <li><a href="./uml">Unified Modeling Language</a></li> <li><a href="https://bitbucket.org/rezilla/open-lecture-notes">Open Source Course</a></li> <li><a href="./files/scientific-writing.pdf">Scientific Writing</a> </li> <li><a href="./files/intro.pptx">Introduction Slides for Freshmen (in Chinese)</a></li> <li><a href="./ddb">Distributed Database</a></li> </ul> <hr/> <p><img alt="vim powered" src="image/vim_powered_blueblack.gif" title=""/> Last modified on 2019-09-22</p> </body> </html>, <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>Zhilei Ren</title> <meta content="text/html; charset=utf-8" http-equiv="Content-Type"/> </head> <body> <p><img alt="Zhilei Ren" src="image/ren.png" title=""/></p> <p>Zhilei Ren (任志磊), associate professossor at <a href="http://oscar-lab.org/">OSCAR</a> lab, <a href="http://www.dlut.edu.cn/en/">Dalian University of Technology</a>.</p> <p><a href="index_chn.htm">[中文]</a></p> <hr/> <h1>Research Interests</h1> <p>Evolutionary Computation, Automatic Algorithm Configuration, Data Mining, and Data Analysis in Software Engineering</p> <h1>Brief Biography</h1> <ul> <li>Sep. 2009 - Mar. 2013 Ph.D candidate Dalian University of Technology, supervised by Prof. <a href="http://faculty.dlut.edu.cn/jianghe/en/index.htm">He Jiang</a> </li> <li>Sep. 2007 - Jun. 2009 MS candidate Dalian University of Technology, supervised by Prof. <a href="http://faculty.dlut.edu.cn/jianghe/en/index.htm">He Jiang</a> </li> <li>Sep. 2003 - Jul. 2007 BS (software engineering) Dalian University of Technology</li> </ul> <h1>Publications</h1> <h3>Journal Papers</h3> <ul> <li><strong>Zhilei Ren</strong>, He Jiang, Jifeng Xuan, Shuwei Zhang, Zhongxuan Luo. Feature based problem hardness understanding for requirements engineering. Science China Information Sciences, 60(3), 032105, 2017. </li> <li><strong>Zhilei Ren</strong>, He Jiang, Shuwei Zhang, Jingxuan Zhang, Zhongxuan Luo. Boosting Local Search with Lagrangian Relaxation. Journal of Heuristics. Online. </li> <li><strong>Zhilei Ren</strong>, He Jiang, Jifeng Xuan, Yan Hu, Zhongxuan Luo. New Insights Into Diversification of Hyper-Heuristics. IEEE Transactions on Cybernetics. Online. </li> <li><strong>Zhilei Ren</strong>, He Jiang, Jifeng Xuan, Zhongxuan Luo. Hyper-Heuristics with Low Level Parameter Adaptation. Evolutionary Computation, vol. 20, no. 2, pp. 189-227.</li> <li><strong>Zhilei Ren</strong>, He Jiang, Jifeng Xuan, Zhongxuan Luo. An Accelerated Limit Crossing Based Multilevel Algorithm for the p-Median Problem. IEEE Transactions on Systems, Man, and Cybernetics, Part B: Cybernetics, vol. 42, no. 4, pp. 1187-1202.</li> <li>He Jiang, <strong>Zhilei Ren</strong>, Jifeng Xuan, Xindong Wu. Extracting Elite Pairwise Constraints for Clustering. Neurocomputing. Online.</li> <li>Jifeng Xuan, He Jiang, <strong>Zhilei Ren</strong>, Zhongxuan Luo. Solving the Large Scale Next Release Problem with a Backbone Based Multilevel Algorithm. IEEE Transactions on Software Engineering, vol. 38, no. 5, Sept.-Oct. 2012, pp. 1195-1212.</li> </ul> <h3>Conference Papers</h3> <ul> <li><strong>Zhilei Ren</strong>, Changlin Liu, Xusheng Xiao, He Jiang, and Tao Xie. Root Cause Localization for Unreproducible Builds via Causality Analysis over System Call Tracing. The 34th IEEE/ACM International Conference on Automated Software Engineering (ASE 2019). Accepted.</li> <li><strong>Zhilei Ren</strong>, He Jiang, Jifeng Xuan, and Zijiang Yang. Automated Localization for Unreproducible Builds. The 40th IEEE International Conference on Software Engineering (ICSE 2018), Gothenburg, Sweden. May 27 - June 3, 2018, pp. 71-81.</li> <li><strong>Zhilei Ren</strong>, He Jiang, Jifeng Xuan, Ke Tang, Yan Hu. Analyzing Inter-objective Relationships: A Case Study of Software Upgradability. Proceedings of the 14th International Conference on Parallel Problem Solving from Nature (PPSN 2016), Edinburgh, Scotland, UK. September 17-21, 2016, pp. 442-452.</li> <li> <strong>Zhilei Ren</strong>, He Jiang, Jifeng Xuan, Shuwei Zhang, Zhongxuan Luo. Learning from Evolved Next Release Problem Instances. Proceedings of the 2014 conference companion on Genetic and evolutionary computation companion, Vancouver, Canada. July 11-16, 2014, pp. 189-190.</li> <li>Jifeng Xuan, He Jiang, <strong>Zhilei Ren</strong>, Weiqin Zou. Developer Prioritization in Bug Repositories. Proceedings of 34th International Conference on Software Engineering (ICSE 2012), Zurich, Switzerland. June 2-9, 2012, pp. 25-35.</li> <li><strong>Zhilei Ren</strong>, He Jiang, Jifeng Xuan, Zhongxuan Luo. Ant Based Hyper Heuristics with Space Reduction: A Case Study of the p-Median Problem. Proceedings of 11th International Conference on Parallel Problem Solving From Nature (PPSN 2010), Krakow, Poland. September 11-15, 2010, pp. 546-555.</li> <li>Jifeng Xuan, He Jiang, <strong>Zhilei Ren</strong>, Jun Yan, Zhongxuan Luo. Automatic Bug Triage using Semi-Supervised Text Classification. Proceedings of 22nd International Conference on Software Engineering and Knowledge Engineering (SEKE 2010), Redwood City, California, USA. July 1-3, 2010, pp. 209-214.</li> <li>He Jiang, Jifeng Xuan, <strong>Zhilei Ren</strong>. Approximate Backbone Based Multilevel Algorithm for Next Release Problem. Proceedings of 12th Annual Conference on Genetic and Evolutionary Computation. (GECCO 2010), Portland, Oregon, USA. ACM Press, July 7-11, 2010, pp. 1333-1340.</li> <li>He Jiang, <strong>Zhilei Ren</strong>, Yan Hu. A sampling based fant for the 3-dimensional assignment problem. Proceedings of 2008 IEEE Congress on Evolutionary Computation (CEC 2008), Hongkong, China. IEEE Computer Society, 2008, pp. 4118-4124.</li> </ul> <h1>Activities</h1> <ul> <li>Publication chair, IEA/AIE 2012 (The 25th International Conference on Industrial, Engineering & Other Applications of Applied Intelligent Systems)</li> <li>Reviewer, IEA/AIE 2012 (The 25th International Conference on Industrial, Engineering & Other Applications of Applied Intelligent Systems)</li> <li>Reviewer, ICM 2011 (The International Conference of Information Technology, Computer Engineering and Management Sciences)</li> <li>Reviewer, Applied Intelligence</li> <li>Co-reviewer, KBS (Knowledge-Based Systems)</li> <li>Co-reviewer, IJACT (International Journal of Advancements in Computing Technology)</li> <li>Co-reviewer, ISI 2012 (IEEE International Conference on Intelligence and Security Informatics)</li> <li>Co-reviewer, CSE 2011 (The 14th IEEE International Conference on Computational Science and Engineering)</li> <li>Co-reviewer, Journal of Software</li> </ul> <h1>Awards</h1> <ul> <li>2018: ACM SIGSOFT Distinguished Paper Award</li> <li>2008: Outstanding Master's Candidate in the Software School of Dalian University of Technology</li> <li>2008: First-class Scholarship at Dalian University of Technology </li> <li>2007: Outstanding Graduate of Dalian City </li> <li>2006: Scholarship Sponsored by Dalian ShiDe Group</li> <li>2006: Outstanding Student of Liaoning Province</li> <li>2006: First-class Scholarship at Dalian University of Technology</li> <li>2005: Citi Bank's Financial Information Technology Scholarship</li> <li>2005: First-class Scholarship at Dalian University of Technology</li> <li>2004: Third-class NOK Scholarship</li> <li>2004: First-class Scholarship at Dalian University of Technology</li> </ul> <h1>Teaching Assistant</h1> <ul> <li>Compiler Principles, Spring 2009</li> <li>Compiler Principles, Autumn 2008</li> <li>Compiler Principles, Autumn 2007</li> </ul> <h1>Teaching Materials</h1> <ul> <li><a href="./compiler">Compiler Principles Slides</a></li> <li><a href="./uml">Unified Modeling Language</a></li> <li><a href="https://bitbucket.org/rezilla/open-lecture-notes">Open Source Course</a></li> <li><a href="./files/scientific-writing.pdf">Scientific Writing</a> </li> <li><a href="./files/intro.pptx">Introduction Slides for Freshmen (in Chinese)</a></li> <li><a href="./ddb">Distributed Database</a></li> </ul> <hr/> <p><img alt="vim powered" src="image/vim_powered_blueblack.gif" title=""/> Last modified on 2019-09-22</p> </body> </html>]
doc.p.next # 使用next遍历页面中下一节点
<img alt="Zhilei Ren" src="image/ren.png" title=""/>
list(doc.ul.children) # 使用children获得某节点的所有子节点
['\n', <li>Sep. 2009 - Mar. 2013 Ph.D candidate Dalian University of Technology, supervised by Prof. <a href="http://faculty.dlut.edu.cn/jianghe/en/index.htm">He Jiang</a> </li>, '\n', <li>Sep. 2007 - Jun. 2009 MS candidate Dalian University of Technology, supervised by Prof. <a href="http://faculty.dlut.edu.cn/jianghe/en/index.htm">He Jiang</a> </li>, '\n', <li>Sep. 2003 - Jul. 2007 BS (software engineering) Dalian University of Technology</li>, '\n']
# 遍历所有a节点,打印href字段
for link in doc.find_all('a'):
print(link.get('href'))
http://oscar-lab.org/ http://www.dlut.edu.cn/en/ index_chn.htm http://faculty.dlut.edu.cn/jianghe/en/index.htm http://faculty.dlut.edu.cn/jianghe/en/index.htm ./compiler ./uml https://bitbucket.org/rezilla/open-lecture-notes ./files/scientific-writing.pdf ./files/intro.pptx ./ddb
doc.find('ul') # find参数默认为tag名称,如a/p/ul/ol/li
<ul> <li>Sep. 2009 - Mar. 2013 Ph.D candidate Dalian University of Technology, supervised by Prof. <a href="http://faculty.dlut.edu.cn/jianghe/en/index.htm">He Jiang</a> </li> <li>Sep. 2007 - Jun. 2009 MS candidate Dalian University of Technology, supervised by Prof. <a href="http://faculty.dlut.edu.cn/jianghe/en/index.htm">He Jiang</a> </li> <li>Sep. 2003 - Jul. 2007 BS (software engineering) Dalian University of Technology</li> </ul>
a = doc.a
a.find_next('a') # 从某个节点出发进行搜索
<a href="http://www.dlut.edu.cn/en/">Dalian University of Technology</a>
import re
doc.find_all(text=re.compile("(IEEE)|(ACM)")) # 使用正则表达式匹配文本
[', He Jiang, Jifeng Xuan, Yan Hu, Zhongxuan Luo. New Insights Into Diversification of Hyper-Heuristics. IEEE Transactions on Cybernetics. Online. ', ', He Jiang, Jifeng Xuan, Zhongxuan Luo. An Accelerated Limit Crossing Based Multilevel Algorithm for the p-Median Problem. IEEE Transactions on Systems, Man, and Cybernetics, Part B: Cybernetics, vol. 42, no. 4, pp. 1187-1202.', ', Zhongxuan Luo. Solving the Large Scale Next Release Problem with a Backbone Based Multilevel Algorithm. IEEE Transactions on Software Engineering, vol. 38, no. 5, Sept.-Oct. 2012, pp. 1195-1212.', ', Changlin Liu, Xusheng Xiao, He Jiang, and Tao Xie. Root Cause Localization for Unreproducible Builds via Causality Analysis over System Call Tracing. The 34th IEEE/ACM International Conference on Automated Software Engineering (ASE 2019). Accepted.', ', He Jiang, Jifeng Xuan, and Zijiang Yang. Automated Localization for Unreproducible Builds. The 40th IEEE International Conference on Software Engineering (ICSE 2018), Gothenburg, Sweden. May 27 - June 3, 2018, pp. 71-81.', '. Approximate Backbone Based Multilevel Algorithm for Next Release Problem. Proceedings of 12th Annual Conference on Genetic and Evolutionary Computation. (GECCO 2010), Portland, Oregon, USA. ACM Press, July 7-11, 2010, pp. 1333-1340.', ', Yan Hu. A sampling based fant for the 3-dimensional assignment problem. Proceedings of 2008 IEEE Congress on Evolutionary Computation (CEC 2008), Hongkong, China. IEEE Computer Society, 2008, pp. 4118-4124.', 'Co-reviewer, ISI 2012 (IEEE International Conference on Intelligence and Security Informatics)', 'Co-reviewer, CSE 2011 (The 14th IEEE International Conference on Computational Science and Engineering)', '2018: ACM SIGSOFT Distinguished Paper Award']
doc.find_all(re.compile("e")) # 正则表达式也可以匹配tag
[<head> <title>Zhilei Ren</title> <meta content="text/html; charset=utf-8" http-equiv="Content-Type"/> </head>, <title>Zhilei Ren</title>, <meta content="text/html; charset=utf-8" http-equiv="Content-Type"/>]
# 遍历DOM树,按缩进显示树形结构
def tree(node, prefix, last):
if not isinstance(node, bs4.element.Tag):
pass
else:
print(prefix + last + node.name)
children = [c for c in node.children if isinstance(c, bs4.element.Tag)]
if children:
for child in children[:-1]:
tree(child, prefix + ' |', '--')
tree(children[-1], prefix + ' ', '`-')
tree(doc, "", "")
[document] `-html |--head | |--title | `-meta `-body |--p | `-img |--p | |--a | `-a |--p | `-a |--hr |--h1 |--p |--h1 |--ul | |--li | | `-a | |--li | | `-a | `-li |--h1 |--h3 |--ul | |--li | | `-strong | |--li | | `-strong | |--li | | `-strong | |--li | | `-strong | |--li | | `-strong | |--li | | `-strong | `-li | `-strong |--h3 |--ul | |--li | | `-strong | |--li | | `-strong | |--li | | `-strong | |--li | | `-strong | |--li | | `-strong | |--li | | `-strong | |--li | | `-strong | |--li | | `-strong | `-li | `-strong |--h1 |--ul | |--li | |--li | |--li | |--li | |--li | |--li | |--li | |--li | `-li |--h1 |--ul | |--li | |--li | |--li | |--li | |--li | |--li | |--li | |--li | |--li | |--li | `-li |--h1 |--ul | |--li | |--li | `-li |--h1 |--ul | |--li | | `-a | |--li | | `-a | |--li | | `-a | |--li | | `-a | |--li | | `-a | `-li | `-a |--hr `-p `-img