时间:2021-07-01 10:21:17 帮助过:4人阅读
301 Moved Permanently 301 Moved Permanently
nginx
可能还是cookie的问题,你把
我之前用ruby写过一个自动刷评论别人微博的程序,给你参考下。类似于微博上的那种广告机器人。
运行后会自动评论指定微博地址的最新一条微博,10秒钟评论一次。评论内容最后我加了很长的随机串来防止被新浪过滤。
运行环境:ruby1.9+
#! /usr/local/bin/ruby -w# -*- coding: UTF-8 -*-require 'net/http'class Auto_comment @@comment_url = 'http://weibo.com/aj/comment/add?_wv=5&__rnd=13811801512' @@headers = { 'Cookie' => '[这里换成你的cookie]', 'Referer' => 'http://weibo.com', 'User-Agent' => 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_2) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22', 'Content-Type' => 'application/x-www-form-urlencoded' } def exec weibo, content @weibo = weibo @content = content check_new_post end private def create_salt chars = ("a".."z").to_a newpass = "" 1.upto(100) { |i| newpass << chars[rand(chars.size-1)] } newpass end def check_new_post uri = URI.parse @weibo req = Net::HTTP::Get.new uri.request_uri, @@headers res = Net::HTTP.start uri.host, uri.port do |http| http.request(req) end mid_list = res.body.scan( /mid=\\\"(.*?)\\\"/ ) mid = mid_list.first[0].to_s comment mid end def comment mid postfields = { :act => 'post', :mid => mid, :forward => '0', :isroot => '0', :content => @content+"_防新浪过滤重复内容随机串{"+create_salt+"}", :type => 'big', :location => 'mblog', :module => 'bcommlist', :tranandcomm => '1', :_t => '0' } uri = URI.parse @@comment_url http = Net::HTTP.new( uri.host, 80) field = '' postfields.each do |k, v| field += "#{k}=#{v}&" end field.chop! http.post uri.request_uri, field, @@headers endend#要评论的微博地址weibo = 'http://weibo.com/u/1777627917'content = '自动评论程序测试'comment = Auto_comment.new#每10秒钟评论一次loop do comment.exec weibo, content sleep 10end
可能还是cookie的问题,你把
我之前用ruby写过一个自动刷评论别人微博的程序,给你参考下。类似于微博上的那种广告机器人。
运行后会自动评论指定微博地址的最新一条微博,10秒钟评论一次。评论内容最后我加了很长的随机串来防止被新浪过滤。
运行环境:ruby1.9+
#! /usr/local/bin/ruby -w# -*- coding: UTF-8 -*-require 'net/http'class Auto_comment @@comment_url = 'http://weibo.com/aj/comment/add?_wv=5&__rnd=13811801512' @@headers = { 'Cookie' => '[这里换成你的cookie]', 'Referer' => 'http://weibo.com', 'User-Agent' => 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_2) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22', 'Content-Type' => 'application/x-www-form-urlencoded' } def exec weibo, content @weibo = weibo @content = content check_new_post end private def create_salt chars = ("a".."z").to_a newpass = "" 1.upto(100) { |i| newpass << chars[rand(chars.size-1)] } newpass end def check_new_post uri = URI.parse @weibo req = Net::HTTP::Get.new uri.request_uri, @@headers res = Net::HTTP.start uri.host, uri.port do |http| http.request(req) end mid_list = res.body.scan( /mid=\\\"(.*?)\\\"/ ) mid = mid_list.first[0].to_s comment mid end def comment mid postfields = { :act => 'post', :mid => mid, :forward => '0', :isroot => '0', :content => @content+"_防新浪过滤重复内容随机串{"+create_salt+"}", :type => 'big', :location => 'mblog', :module => 'bcommlist', :tranandcomm => '1', :_t => '0' } uri = URI.parse @@comment_url http = Net::HTTP.new( uri.host, 80) field = '' postfields.each do |k, v| field += "#{k}=#{v}&" end field.chop! http.post uri.request_uri, field, @@headers endend#要评论的微博地址weibo = 'http://weibo.com/u/1777627917'content = '自动评论程序测试'comment = Auto_comment.new#每10秒钟评论一次loop do comment.exec weibo, content sleep 10end
__rnd参数我给了一个定值就可以。去掉可能不行,但可以给一个定值。
cookie我是从chrome的审查元素里面取到的。
如果确定cookie没问题的话,你把发送的http头精简下,跟我一样只发送4个域。因为你那结果是301,所以我还是怀疑是你cookie验证的部分没有通过。
之前我也用php写过几个操作微博的,如自动发微博,自动关注别人等等,不过代码没有存。所以没法发出来给你参考了。
__rnd参数我给了一个定值就可以。去掉可能不行,但可以给一个定值。
cookie我是从chrome的审查元素里面取到的。
如果确定cookie没问题的话,你把发送的http头精简下,跟我一样只发送4个域。因为你那结果是301,所以我还是怀疑是你cookie验证的部分没有通过。
之前我也用php写过几个操作微博的,如自动发微博,自动关注别人等等,不过代码没有存。所以没法发出来给你参考了。
只留四个的头部还是不行依然是301,真不明白。。
$post_str 在哪?
$post_header.="text=test&pic_id=&rank=0&rankid=&_surl=&hottopicid=&location=home&module=stissue&_t=0";
post的数据不应该加入header,应该用curl相关参数处理
$post_str 在哪?
$post_header.="text=test&pic_id=&rank=0&rankid=&_surl=&hottopicid=&location=home&module=stissue&_t=0";
post的数据不应该加入header,应该用curl相关参数处理
测试时发现content length随便都可以的所以poststr我就去掉了
问题是CURL在命令行下CURL模块是没开启的
而且其他的网站都不会有这个问题我也想知道到底的什么情况。
没用看到 Connection:close
也没有看到 Content-length:nnn
一般的说,post数据的长度,在 Connection:close 前声明,数据体附加在正文中,即Connection:close之后
没用看到 Connection:close
也没有看到 Content-length:nnn
一般的说,post数据的长度,在 Connection:close 前声明,数据体附加在正文中,即Connection:close之后
正常发送的时候数据是这样的
另外PHP中的也是和正常发送的一样是KEEP-ALIVE在第三行