爬取北京这个页面的网页信息
2017-08-10 14:06
447 查看
#coding=utf-8 import urllib2 import httplib import re from pybloomfilter import BloomFilter import StringIO import os import gzip import zlib import lxml from lxml import html from lxml import etree import pandas as pd from bs4 import BeautifulSoup request_headers = { 'Accept':"image/webp,image/apng,image/*,*/*;q=0.8", 'Accept-Encoding':"gzip, deflate", 'Accept-Language':"zh-CN,zh;q=0.8", 'Connection':"keep-alive", 'Referer':"http://3g.163.com/touch/local?dataversion=A&uversion=A&version=v_standard", 'User-Agent':"Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.109 Mobile Safari/537.36" } # 创建 Bloom Filter download_bf = BloomFilter(1024 * 1024 * 16, 0.01) url = 'http://3g.163.com/touch/local?dataversion=A&uversion=A&version=v_standard' req = urllib2.Request(url, headers=request_headers) response = urllib2.urlopen(req) htmlcontent = response.read() #如果是gzip解码的话,怕出现乱码,要用下面三行 gzipped = response.headers.get('Content-Encoding') if gzipped: htmlcontent = zlib.decompress(htmlcontent, 16+zlib.MAX_WBITS) print htmlcontent soup = BeautifulSoup(htmlcontent, 'lxml') urls=[] news_content=[] # a=soup.select('div.cm_news_main > ul.cm_ul_round > li > a ') # print a # ul_contents=soup.select('ul[class="cm_ul_round ul_page1"] > li > a') # print ul_contents for link in soup.select('div.aslide > a'): urls.append(link.get('href')) news_content.append(link.text) print urls for i in news_content: print i print len(news_content) # for link in soup.select('div.ndi_main > h3 > a'): # # urls.append(link.get('href')) # news_content.append(link.text) # print urls # print len(news_content)
相关文章推荐
- 弹出窗口刷新它的父页面后。出现不重新发送信息,则无法刷新网页
- [VB.NET]我打开网页的时候会弹出一个安全信息,然后出现:本页包含安全能容和不安全内容,是否显示不安全内容”请达人指教一下怎么删除这个提示
- showModalDialog 刷新本页面,不重新发送信息,则无法刷新网页,Page_PreRender
- F5刷新网页时,出现了“如要再次显示该网页,web浏览器需要重新发送你以前提交的信息...要点击重试",如何不让出现这个对话框的解决方案
- QQ信息中传播Worm.Viking.es的这个网页真复杂
- 发布房产信息网页的前台页面js部分2
- 豆瓣2100部动漫页面的网页源码(包括评分,导演,类型,简介等信息,附抓取代码)
- ajax 实现加载页面、删除、查看详细信息,以及bootstrap网页的美化
- 实现功能:弹出一个DIV层提示等待信息,这个时候禁用用户操作页面中的其他内容
- 使用PHP向Mysql数据库插入信息,页面中文内容显示正常,但在数据库里却是乱码,这个怎么解决?
- 如何让网页显示友好的错误信息页面
- 如何实现页面上的超链接指向这个嵌入的网页?/ IFRAME标签的使用。
- 实现刷新页面,避免出现"不重新发送信息,则无法刷新网页",JS代码如下。
- fragment当切换页面的时候,页面的UI信息没有了,然后再次切换这个页面的时候,又变回原来没有登录的状态的界面
- 微信公众号开发——网页授权 (页面分享 、获取用户基本信息)
- 问题:在手动刷新aspx页面时,出现“不重新发送信息,则无法刷新网页。请单击“重试”,或单击“取消”返回正查看的页。”
- js自定义网页对话框及同页面获得信息
- 弹出窗口刷新它的父页面后。出现不重新发送信息,则无法刷新网页
- 微信网页获取用户基本信息(无需弹出授权页面)
- 爬取网页时自动获取网页编码信息,并对特殊的乱码页面(压缩过的网页内容)用gzip进行解码。