从上海税务获取欠税信息

本段代码的目的是从  http://www.tax.sh.gov.cn/tycx/TYCXqjsknsrmdCtrl-getQjsknsrmd.pfv 获取 欠税信息。

通过Fiddler工具 ,抓包查看该站点的推送方式。

通过工具我们可以发现,有POST信息,且post的内容为,type nsrmc swdjh fzrxm tsnr curPage

因此,我们可以模型上述URL的请求。

以下代码,是使用了代理的方式访问:

通过生成一个ProxyHandler对象,来打开相应的网页。

#coding:utf-8
import sys,re
import urllib.request
import http.client
from _overlapped import PostQueuedCompletionStatus

fname = "C:/Users/Songxiaodi/Desktop/tax_file.txt"
file = open(fname, ‘w‘)

for line in range(1,170):
    proxy_handler = urllib.request.ProxyHandler({‘http‘:‘11.1.0.10:80‘})
    opener = urllib.request.build_opener(proxy_handler)
    postdata = urllib.parse.urlencode({‘type‘:‘QY‘,‘nsrmc‘:‘‘,‘swdjh‘:‘‘,‘fzrxm‘:‘‘,‘tsnr‘:‘Tue+Sep+30+00%3A00%3A00+GMT%2B08%3A00+2014‘,‘curPage‘:line})
    postdata = postdata.encode(‘utf-8‘)
    page = opener.open(‘http://www.tax.sh.gov.cn/tycx/TYCXqjsknsrmdCtrl-getQjsknsrmd.pfv‘,postdata)
    html = str(page.read(), ‘utf-8‘)
    reg=re.compile(r"\<td\>(.*公司.*)\<\/td\>")
    print (reg.findall(html))
    content=reg.findall(html)
    for cc in range(0, len(content)):
        #print("--:" + str(cc)+content[cc])
        file.write(str(content[cc]))
        file.write("\n")
file.close()
print (‘OK‘)  

若不使用代理访问,可以使用urllib.request.urlopen

 1 #coding:utf-8
 2 import sys,re
 3 import urllib.request
 4 import http.client
 5 from _overlapped import PostQueuedCompletionStatus
 6
 7 fname = "C:/Users/Songxiaodi/Desktop/tax_file.txt"
 8 file = open(fname, ‘w‘)
 9
10 for line in range(1,170):
11     #===========================================================================
12     # proxy_handler = urllib.request.ProxyHandler({‘http‘:‘11.1.0.10:80‘})
13     # opener = urllib.request.build_opener(proxy_handler)
14     #===========================================================================
15     postdata = urllib.parse.urlencode({‘type‘:‘QY‘,‘nsrmc‘:‘‘,‘swdjh‘:‘‘,‘fzrxm‘:‘‘,‘tsnr‘:‘Tue+Sep+30+00%3A00%3A00+GMT%2B08%3A00+2014‘,‘curPage‘:line})
16     postdata = postdata.encode(‘utf-8‘)
17     page = urllib.request.urlopen(‘http://www.tax.sh.gov.cn/tycx/TYCXqjsknsrmdCtrl-getQjsknsrmd.pfv‘,postdata)
18     html = str(page.read(), ‘utf-8‘)
19     reg=re.compile(r"\<td\>(.*公司.*)\<\/td\>")
20     print (reg.findall(html))
21     content=reg.findall(html)
22     for cc in range(0, len(content)):
23         #print("--:" + str(cc)+content[cc])
24         file.write(str(content[cc]))
25         file.write("\n")
26 file.close()
27 print (‘OK‘)  
时间: 2024-10-22 08:56:53

从上海税务获取欠税信息的相关文章

Java通过webservice接口获取天气信息

通过SOAP请求的方式获取天气信息并解析返回的XML文件. 参考: http://www.webxml.com.cn/WebServices/WeatherWS.asmx import java.io.InputStream; import java.io.OutputStream; import java.io.OutputStreamWriter; import java.net.URL; import java.net.URLConnection; import javax.xml.par

【Android实战】实现新浪微博第三方登录获取用户信息

本来最开始研究的腾讯微博第三方登录,但腾讯微博的SDK太糟糕了,估计他们自己都放弃了.想想也是,除了腾讯自家的应用在用腾讯微博,其他的开发者基本不去碰这块.所以马上去研究微博老大去了,平台果然强大,代码和文档一大堆,研究了半天,找点自己需要的功能,还是有点收获,先把这些记录下来,以后再慢慢研究. 目前实现的是实现第三方的登录,获取用户名显示到第三方应用上面. 主类,用到了Afinal框架 public class WbMainAct extends FinalActivity { // @Vie

微信企业号 获取用户信息

业务操作最基础的一个功能是获取访客的身份,传统的获取方式是提供一个登录页面用以访客登录. 在微信企业号中,用户在微信中访问页面时,可以根据相关API获取此用户的微信账号信息,以此来匹配业务服务器存储的相关用户信息. 目录 1.  介绍 2.  代码示例 1. 介绍 1.1 说明 企业号的网页开发,说白了就是移动端web开发,特殊点在于如何获取微信用户的身份信息. 在企业号中可以进行如下步骤获取微信用户信息: 访问一个业务页面时,可通过OAuth验证接口获取此用户信息 → 根据code获取user

微信公众号开发_如何获取用户信息?

如何获取用户信息? sence: 1)有微信服务认证号,并已开通功能:网页服务>>网页账号>>网页授权获取用户基本信息 2)设置:网页授权获取用户基本信息 后面的 修改 ,设置成 www.jianshu.com [注脚1] 3)用户已经关注公众号 实现功能:获取用户信息userinfo. THINK: 网页授权获取用户基本信息 具体而言,网页授权流程分为四步: 1.引导用户进入授权页面同意授权,获取code 2.通过code换取网页授权access_token(与基础支持中的acc

安卓获取软硬件信息并上传给server(Socket实现)

首先,项目结构如图--A:分为client部分CheckInfo和server端CheckInfo_Server.CheckInfo获取手机信息(Mac,Cpu,内存,已安装软件信息等)并上传到server端,然后从已安装软件信息中查找有没有安装某一款软件,没有则定位到该软件下载页面.CheckInfo_Server将上传的信息输出. 图--A AndroidManifest.xml: <? xml version="1.0" encoding="utf-8"

第九篇:使用 lstat 函数获取文件信息

前言 在之前的文章中,描述过如何用 fcntl 函数改变文件的状态标记.但,文件还有很多信息,如文件类型,权限设置,设备编号,访问时间等等.如果要获取这些信息,则使用函数 lstat 可以轻松达到这个目的. 下面的程序将使用该函数获取文件类型信息并判断它的类型. 但在这之前,先要说明文件信息结构体和文件类型判定宏. 文件信息结构体 调用 lstat 函数将会把指定文件的信息存放到 stat 结构体中,这个结构体的定义大致如下: 文件类型判定宏 文件结构体中的文件类型字段是一个整数,对此,可以使用

iOS利用HealthKit框架从健康app中获取步数信息

微信和QQ的每日步数最近十分火爆,我就想为自己写的项目中添加一个显示每日步数的功能,上网一搜好像并有相关的详细资料,自己动手丰衣足食. 统计步数信息并不需要我们自己去实现,iOS自带的健康app已经为我们统计好了步数数据 我们只要使用HealthKit框架从健康app中获取这个数据信息就可以了 这篇文章对HealthKit框架进行了简单的介绍:http://www.cocoachina.com/ios/20140915/9624.html 对HealthKit框架有了简单的了解后我们就可以开始了

linux下获取主机信息

程序源于linux程序设计这本书,个人利用这本书学习,本文作为一个知识点来学习. 这里首先介绍几个结构体: 1 2 3 4 5 6 7 struct hostent{ char* h_name;//主机名称 char* h_aliases;//主机别名 short h_addrtype;//主机地址类型 short h_length;//主机地址长度 char **h_addr_list;//主机地址列表 }   其中,主机地址类型h_addrtype为AF_INET;地址列表为字符串,长度不定

Linux获取网络接口信息

linux获取网络接口信息需要用到的函数为ioctl(),结构体struct ifreq,struct ifconf 1.ioctl()函数原型及作用 1 #include <sys/ioctl.h> 2 3 int ioctl(int d, int request, ...); 4 5 //参数 6 //int d:是一个文件描述符 7 //int request :表示要请求的信息.如IP地址.网络掩码等 8 //......:可变参数,根据request而定 下面是ioctl请求的req