请多多包涵.我是Python的新手 – 但有很多乐趣.我正在尝试编写一个网络爬虫代码,用于搜索丹麦最后一次公投的选举结果.我设法从主页面中提取所有相关链接.现在我希望Python遵循92个链接中的每一个,并从每个页面中收集9条信息.但我很困惑.希望你能给我一个提示.
这是我的代码:
import requestsimport urllib2 from bs4 import BeautifulSoup# This is the original url http://www.kmdvalg.dk/soup = BeautifulSoup(urllib2.urlopen('http://www.kmdvalg.dk/').read())my_List = []all_links = soup.find_all("a")for link in all_links: link2 = link["href"] my_List.append(link2)for i in my_List[1:93]: print i# The output shows all the links that I would like to follow and gather information from. How do I do that?
最佳答案一个简单的方法是遍历您的URL列表并分别解析它们:for url in my_List: soup = BeautifulSoup(urllib2.urlopen(url).read()) # then parse each page indivIDually here
或者,您可以使用Futures显着加快速度.
from requests_futures.sessions import FuturesSessiondef my_parse_function(HTML): """Use this function to parse each page""" soup = BeautifulSoup(HTML) all_paragraphs = soup.find_all('p') return all_paragraphssession = FuturesSession(max_workers=5)futures = [session.get(url) for url in my_List]page_results = [my_parse_function(future.result()) for future in results]
总结 以上是内存溢出为你收集整理的python – Web爬虫 – 以下链接全部内容,希望文章能够帮你解决python – Web爬虫 – 以下链接所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)