use Net::SMTP;
use LWP::UserAgent;
use HTTP::Cookies;
use HTTP::Headers;
use HTTP::Response;
use Encode;
use Switch;
use File::Temp qw/tempfile/;
use HTTP::Date qw(time2iso str2time time2iso time2isoz);
my $CurrTime = time2iso( time() );
my $dis_mainpublish = '中均资本';
my $ua = LWP::UserAgent->new( ssl_opts => {verify_hostname => 0});
$ua->timeout(10);
$ua->env_proxy;
my $now = time();
$ua->agent('Mozilla/5.0');
my $cookie_jar = HTTP::Cookies->new(
file => 'lwp_cookies.txt',
autosave => 1,
ignore_discard => 1
);
$ua->cookie_jar($cookie_jar);
my $str = ( rand(1) );
##获取验证码https://www.zjtest4.com/validcode/generate-validcode.do
my $response =
$ua->get("https://www.zjtest4.com/validcode/generate-validcode.do?$str");
print "\$str is $str\n"; if ( $response->is_success ) {
$r = $response->decoded_content; # print $response->decoded_content; # or whatever
}
else {
die $response->status_line;
} my ( $fh, $filename ) =
tempfile( "wj_qrcode_XXXX", SUFFIX => ".jpg", DIR => 'c:\\' );
binmode $fh;
print $fh $r;
close $fh;
print encode( "gbk", decode( "utf8","登录二维码已经下载到本地")) ."[ $filename ] \n"; ##打开图片
system("start $filename "); my $validCode = <STDIN>;
chomp $validCode;
print "\$validCode is $validCode\n"; #my $url="https://www.zjtest4.com/business/dispatch_post.do"; my $login_url = 'https://www.zjtest4.com/business/dispatch_post.do?action=submitAdminLogin'; my $res = $ua->post(
$login_url,
{ 'userName' => 'w123456',
'userPass1' => 'w123456',
'userPass' => '3d24b838770ee90773804e8599e549ff',
'validCode' => "$validCode"
}
);
my $head = $res->header('Location');
#print $res->header('Location');
print $res->status_line . "\n";
#print $res->as_string()
; #获取的是原始内容,包括响应头,响应正文
my $content = $res->content(); my $response = $ua->get("$head");
if ( $response->is_success ) {
#print $response->content;
$r = $response->content;
my $str = encode( "gbk", decode( "utf8", "$r" ) );
print "\login_info is $str\n"; }
else {
$r = $response->content;
print $response->content;
} ###调用发布产品接口
my $url="https://www.zjtest4.com/web/adminauth/post";
my $res = $ua->post(
$url,
{ 'accessType' => '1',
'addUnit' => '1000',
'assignType' => '1',
'bonus' => "0",
'bonusName' => "请选择红包类型",
'borrowerInfo' => "scan",
'buyAcctTypes' => "1",
'buyFromTime' => "2016-07-27 12:01",
'buyToTime' => "2016-07-28 23:59:59",
'capitalPurpose' => "",
'compound' => "2",
'contractSn' => "340",
'custody' => "scan",
'daysOfYear' => "360",
'delegator' => "3",
'duration' => "3",
'entryUnit' => "1000",
'expirationDate' => "2015-1-31",
'financeType' => "1",
'initSoldQuota' => "1000",
'entryUnit' => "0",
'isOnlyForFirst' => "1",
'manualSn' => "0",
'maxClient' => "0",
'maxUnit' => "10000",
'maxYield' => "0.03",
'method' => "/admin/product/publish",
'name' => "温金宝-987654321",
'entryUnit' => "1000",
'entryUnit' => "1000",
'entryUnit' => "1000",
'entryUnit' => "1000",
'entryUnit' => "1000",
'entryUnit' => "1000",
'entryUnit' => "1000",
'entryUnit' => "1000",
'entryUnit' => "1000",
'naturalSeasonRepaymentDay'=>'1',
'precision'=>'2',
'productId'=>'99999999',
'productIntro'=>'scan',
'productPublishType'=>'2',
'productType'=>'4',
'publishChannel'=>'3001',
'quotaForFirst'=>'100000',
'recommendDate'=>'2016-07-27',
'repaySource'=>'scan',
'riskInfo'=>'scan',
'riskLevel'=>'1',
'safeguard'=>'1',
'settlementDate'=>'2016-08-01',
'stageNum'=>'1',
'stagingTemplateId'=>'',
'stairYieldSn'=>'',
'stockAwardYield'=>'0',
'supportCouponType'=>'2',
'supportStock'=>'2',
'supportTransfer'=>'2',
'totalQuota'=>'100000000',
'unitValue'=>'1',
'valueEndDate'=>'2016-07-31',
'valueStartDate'=>'2016-07-29',
'wzeCardYield'=>'0',
'wzeCardYieldOnOff'=>'2',
'yield'=>'0.02',
'yieldForFirst'=>'0.01' }, 'User-Agent'=>'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101 Firefox/45.0' );
print $res->header('Location');
print $res->status_line."\n";
my $str= $res->as_string();#获取的是原始内容,包括响应头,响应正文

perl 自动发产品的更多相关文章

  1. PHP自动发邮件

    自动发邮件 使用了这个类http://bbs.php100.com/read-htm-tid-121431.html 因他用的php版本较老,用到了函数ereg_replace() 和 ereg() ...

  2. C蛮的全栈之路-node篇(二) 实战一:自动发博客

    目录 C蛮的全栈之路-序章 技术栈选择与全栈工程师C蛮的全栈之路-node篇(一) 环境布置C蛮的全栈之路-node篇(二) 实战一:自动发博客 ---------------- 我是分割线 ---- ...

  3. QQ空间自动发广告解决方法

    最近空间好多人QQ都中了毒.每天我都有几十个好友刷空间话费.流量广告! QQ空间自动发广告的原因: 最近使用了刷赞或者其他QQ外挂软件(有些开发者或破解者会在这样的软件上留后门,请自己判断). 或者最 ...

  4. python自动发邮件库yagmail

    #### 一般发邮件方法 我以前在通过Python实现自动化邮件功能的时候是这样的: import smtplib from email.mime.text import MIMEText from ...

  5. java windows自动化-mail自动发邮件

    本文旨在让测试人员了解如何发邮件 发邮件的话,最简单的事是直接手动发邮件,但是在自动化测试中,应做到让机器或者代码来自动发送邮件,笔者大概了解以下几种方法,总有一款口味适合你:1java代码来做下面即 ...

  6. python自动发邮件

    from email.header import Header from email.mime.text import MIMEText from email.utils import parsead ...

  7. jira6.3.6创建问题不自动发邮件通知的问题

    装完jira6.3.6后,设置好邮件服务器,测试没有问题.但是创建问题不自动发邮件提示用户.折腾了大半天,请教了一位大神,终于搞定.步骤是: agile->系统->用户界面->用户缺 ...

  8. redmine创建新闻,自动发邮件给项目组所有成员

    redmine创建新闻,自动发邮件给项目组所有成员: 1.添加用户至公共项目内 2.配置系统邮件推送配置 3.检查用户接受推送配置 3.使用管理员账户发布新闻(不能自己发送自己) 4.查看邮件接受邮件

  9. python自动发邮件库yagmail(转)

    一般发邮件方法 我以前在通过Python实现自动化邮件功能的时候是这样的: import smtplib from email.mime.text import MIMEText from email ...

随机推荐

  1. IOS框架概览

    iOS是执行在iPhone.iPod Touch或iPad上的操作系统,之前叫做iPhone OS,iOS与Mac OS X有共同的基础架构和底层技术.但iOS是依据移动设备的特点而设计的,所以和Ma ...

  2. 180行ruby代码搞定游戏2048

    最今在玩2048这款小游戏,游戏逻辑简单,很适合我这样的对于游戏新入行的人来实现逻辑.于是选择了最拿手的ruby语言来实现这款小游戏的主要逻辑.还是挺简单的,加起来4小时左右搞定. 上代码: requ ...

  3. 史上最简单的Hibernate入门简单介绍

    事实上Hibernate本身是个独立的框架,它不须要不论什么web server或application server的支持.然而,大多数的Hibernate入门介绍都加入了非常多非Hibernate ...

  4. 微信jsapi支付的坑

    1.显示 redirect_uri 参数错误  因为手机支付是需要微信授权的,所以检查配置授权域名地址是否正确填写(登陆微信公众平台,地址:https://mp.weixin.qq.com/cgi-b ...

  5. Foundation 框架 NSString常用总结

    iOS开发过程中,从始至终都会和NSString打交道,在此总结一下NSString的常用的方法,在以后的学习过程中用到的方法也会继续添加 NSString类是Foundation框架中得不可变字符串 ...

  6. c++ primer plus 习题答案(8)

    p475.2 //头文件: class Cd{ private: char *performers; char *label; int selections; double playtime; pub ...

  7. BZOJ 4010: [HNOI2015]菜肴制作( 贪心 )

    把图反向,然后按拓扑序贪心地从大到小选, 最后输出.set比priority_queue慢... --------------------------------------------------- ...

  8. 网络编程——TCP连接

    TCP在双方传输数据前,发送方先请求建立连接,接收方同意建立连接后才能传输数据.(打电话:先拨号,等对方同意接听后,才能交流)...高可靠性 UDP不需要建立连接(发短信).不可靠,可能出现数据丢失等 ...

  9. JQuery 限制文本框只能输入数字和小数点

    $(function(){ /*JQuery 限制文本框只能输入数字*/ $(".NumText").keyup(function(){ $(this).val($(this).v ...

  10. 转: bower 客户端库管理工具

    概述 常用操作 库的安装 库的搜索和查看 库的更新和卸载 列出所有库 配置文件.bowerrc 库信息文件bower.json 相关链接 概述 注:bower下载安装依赖库实际上是使用git进行下载. ...