-
def _get_new_data(self, page_url, soup): res_data = {} #url res_data['url'] = page_url #标题 #<dd class="lemmaWgt-lemmaTitle-title"> #<h1>Python</h1> title_node = soup.find('dd', class_="lemmaWgt-lemmaTitle-title").find("h1") res_data['title'] = title_node.get_text() #简介 #<div class="lemma-summary" label-module="lemmaSummary"> summary_node = soup.find('div', class_="lemma-summary") res_data['summary'] = summary_node.get_text() return res_data def parse(self, page_url, html_cont): if page_url is None or html_cont is None: return soup = BeautifulSoup(html_cont, 'html.parse', \ from_encoding='utf-8') new_urls = self._get_new_urls(page_url, soup) new_data = self._get_new_data(page_url, soup) return new_urls, new_data查看全部
-
import urllib2 class HtmlDownloader(object): #下载网页内容 def download(self,url): if url is None: return None response=urllib2.urlopen(url) if response.getcode()!=200:#判断是否请求成功 return None return response.read()查看全部
-
soup = BeautifulSoup(html_doc, html.prasar)查看全部
-
# coding:utf8 import urllib2, cookielib url = "http://www.baidu.com" print u'第一种方法' response1 = urllib2.urlopen(url) print response1.getcode() print len(response1.read()) print u"第二种方法" request = urllib2.Request(url) request.add_header("user-agent", "Mozilla/5.0") response2 = urllib2.urlopen(request) print response2.getcode() print len(response2.read()) print u"第三种方法" cj = cookielib.CookieJar() opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj)) urllib2.install_opener(opener) response3 = urllib2.urlopen(url) print response3.getcode() print cj print response3.read()查看全部
-
分析目标查看全部
-
爬虫步骤查看全部
-
运行流程查看全部
-
print '获取lacie的链接' links=soup.find_all('a',href='http://example.com/elsie') for link in links: print link.name,link['href'],link.get_text() === iMport re print re ==查看全部
-
第一种方法 200 98004 第二种方法 200 98001 第三种方法 ========== 第一种方法 200 98351 第二种方法 200 98312 ===== 第一种方法 200 98199 第二种方法 200 98014查看全部
-
为什么每次运行的长度都不一样……查看全部
-
报错“SyntaxError: Non-ASCII character '\xd2' in file test2.py on line 13, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details ” 在前面加上encoding: utf-8 encoding: gb2312 也可以。。不知道有什么区别查看全部
-
实例过程查看全部
-
抓取 信息查看全部
-
URL管理器的三种实现方式,Python适合小量数据,redis大公司常用,MySQL适合较复杂的存储。查看全部
-
URL管理器:存储待爬取和已抓取的url集合。 一个待爬取的url爬取之后,就会进入已爬取集合。 防止重复抓取和循环抓取查看全部
举报
0/150
提交
取消