Python 爬虫初探
2018-03-15 00:00
232 查看
直接上代码了,确实很方便,看起来很清晰。
爬下来的数据保存为json,方便以后写入数据库,当然也可直接将数据写入数据库。
# -*- coding:utf-8 -*- from bs4 import BeautifulSoup import requests import time #设置延时用的模块 import json #需要爬的网址,%s简单点说就是替换页码的意思,用生成器生成一个庞大的网页地址然后循环找想要的内容 url = 'http://xx.xx.xx.xx/serviceweb/n820642/n820647/0_index_916461_%s.html' urls = (url %i for i in range(1,3)) #生成器确实很方便,有一个for循环就可以使用了 allurls = list(urls) headers = {'Connection':'keep-alive', 'Cache-Control':'max-age=0', 'Upgrade-Insecure-Requests':'1', 'User-Agent':'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.104 Safari/537.36 Core/1.53.4337.400 QQBrowser/9.7.12672.400', 'Accept':'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8', 'Accept-Encoding':'gzip, deflate, sdch', 'Accept-Language':'zh-CN,zh;q=0.8'} ''' Cookie 的返回对象为 RequestsCookieJar,它的行为和字典类似, 但界面更为完整,适合跨域名跨路径使用。你还可以把 Cookie Jar 传到 Requests 中 可以使用r.cookies先得到如下 <RequestsCookieJar[<Cookie JSESSIONID= xTWJhy5CmPS91LgfLv2bmzflnX1j0K5jPD3sl8D0pCmTGhq2mrxg! -1500843153 for 130.9.1.168/>]> jar = requests.cookies.RequestsCookieJar() jar.set('Cookie JSESSIONID', \ '9W0phy4fh91PXQS16gW8ssBySGvlb2f7R7KdjG29S5kpYPj9x6cN!',\ domain='130.9.1.168', path='/1500843153') ''' cookies = {'Cookie':'yfx_c_g_u_id_10000072=_ck18030209325113273337711116613;\ JSESSIONID=qnNWhyxPx9Qc1tWW1ytsTX4JdQJnb5K1KyyhpJwhZJtMMn9JwGN6!\ -1500843153; \ yfx_f_l_v_t_10000072=f_t_1519954371297__r_t_1520990178788__v_t_1520990178788__r_c_3'} for i in allurls: time.sleep(3) r = requests.get(str(i),headers=headers,cookies=cookies) r.encoding == 'utf-8' #解决乱码的问题 soup = BeautifulSoup(r.text,"lxml") #转化成LXML格式 #找到子节点的值,注意.的用法和string titles = soup.select('span.black14') #各种例子说明用select比find更好一些 dates = soup.select('span.grey14_26') #经过尝试,对于取CSS定义很少的,可以尝试find加正则,之后会上另一个例子 for i,j in zip(titles,dates): #遍历并创建一个字典 data = { 'date':j.string, 'title':i.string } print(data) with open('data.json','a') as f: #保存为json文件 参数‘a’为追加写入的意思 json.dump(data,f,ensure_ascii=False) #ensure_ascii=False解决了乱码的文体
爬下来的数据保存为json,方便以后写入数据库,当然也可直接将数据写入数据库。
{"date": "2006-10-19 ", "title": "国家税务总局有关方面负责人就涉农税收优惠政策答记者问"}{"date": "2006-10-19 ", "title": "税务总局有关方面负责人就个人投资企业债券取得利息征收个人所得税问题答记者问"}{"date": "2006-10-19 ", "title": "国家税务总局有关方面负责人就调整个人全年一次性奖金政策问题答记者问"}{"date": "2006-10-19 ", "title": "国家税务总局新闻发言人就房地产业税收有关问题答记者问"}{"date": "2006-10-19 ", "title": "国家税务总局有关方面负责人就个人所得税法修改有关问题答记者问"}{"date": "2006-10-19 ", "title": "国家税务总局有关方面负责人就《企业所得税汇算清缴管理办法》答记者问"}{"date": "2006-10-19 ", "title": "国家税务总局有关方面负责人就新修订的《中华人民共和国个人所得税法实施条例》答记者问"}{"date": "2006-10-19 ", "title": "国家税务总局有关负责人就出台《调整和完善消费税政策征收管理规定》答记者问"}{"date": "2006-10-19 ", "title": "国家税务总局有关方面负责人就《税务系统领导班子和领导干部监督管理办法(试行)》有关情况答记者..."}{"date": "2006-10-19 ", "title": "国务院法制办、财政部、国家税务总局负责人就《中华人民共和国烟叶税暂行条例》答记者问"}{"date": "20 7fe0 06-10-19 ", "title": "国家税务总局有关负责人就个人所得税有关问题答记者问"}{"date": "2006-10-19 ", "title": "国家税务总局有关负责人就“三费一金”有关个人所得税政策问题答记者问"}{"date": "2006-10-19 ", "title": "国家税务总局副局长崔俊慧就《国家税务总局关于出口货物退(免)税若干问题的通知》有关问题答记者..."}{"date": "2006-10-19 ", "title": "国家税务总局负责人就《国家税务总局关于个人住房转让所得征收个人所得税有关问题的通知》有关问题..."}{"date": "2006-10-19 ", "title": "调整内资企业计税工资政策,促进企业公平竞争—国家税务总局有关负责人就内资企业计税工资政策调整..."}{"date": "2007-12-14 ", "title": "三部门有关负责人就新企业所得税法内容进行解读"}{"date": "2007-12-11 ", "title": "解读《廉租住房保障办法》"}{"date": "2007-12-06 ", "title": "国务院法制办、财政部、税务总局负责人就新修订的《中华人民共和国耕地占用税暂行条例》有关问题答..."}{"date": "2007-11-06 ", "title": "住房公积金有关个人所得税政策解读"}{"date": "2007-03-21 ", "title": "解读新税法:高新企业不在开发区内也可享低税率"}{"date": "2007-03-20 ", "title": "专家:企业所得税法将提升中国股市整体投资价值"}{"date": "2007-03-20 ", "title": "企业所得税法为社会财富更公平分配提供机制保障"}{"date": "2007-03-20 ", "title": "企业所得税法修改更加符合中国经济社会发展需要"}{"date": "2007-03-20 ", "title": "新税法将有利于减少“假外资”政策性套利行为"}{"date": "2007-03-20 ", "title": "高新企业不在开发区内也可享低税率"}{"date": "2007-03-20 ", "title": "企业节能环保项目可享受税收减免"}{"date": "2007-01-16 ", "title": "海关总署解读07版《中华人民共和国进出口税则》"}{"date": "2006-10-24 ", "title": "税务总局新闻发言人就《个体工商户税收定期定额征收管理办法》有关问题答中国政府网问"}{"date": "2006-10-19 ", "title": "国家税务总局有关负责人就再就业税收优惠政策问题答记者问 "}{"date": "2006-10-19 ", "title": "财政部、商务部、国家税务总局负责人就出口退税机制改革相关问题答记者问"}
相关文章推荐
- Python爬虫初探
- 标准爬虫初探,来自Python之父的大餐!
- Python的学习笔记DAY7---关于爬虫(2)之Scrapy初探
- python3爬虫初探(一)之urllib.request
- 【笔记】Python爬虫之初探
- Python爬虫讲座初探
- python3爬虫初探(二)之requests
- 标准爬虫初探,来自Python之父的大餐!
- python3爬虫初探(三)之正则表达式
- 标准爬虫初探,来自Python之父的大餐!
- 初探python爬虫
- 标准爬虫初探,来自Python之父的大餐!
- Python爬虫初探
- python3爬虫初探(四)之文件保存
- 利用scrapy框架python爬虫初探
- python3爬虫初探(五)之从爬取到保存
- Python 爬虫初探
- Python爬虫实践(七):正则表达式(2) re模块的使用
- python3爬虫之开篇
- Python爬虫爬取单张图片