Craigslist Automated Posting API?

时间:2010-09-03 07:37:39

标签: php oop craigslist

我正在查看craigslist批量发布部分,它需要将RSS订阅源发送到服务器以自动发布添加该网站的位置

http://www.craigslist.org/about/bulk_posting_interface

我已经查找了一个php类的示例,但无法找到。有谁知道存在的任何类?感谢

4 个答案:

答案 0 :(得分:13)

我刚检查了CL的使用条款,并明确提到任何自动发布都是非法的。因此,如果您希望扩大规模,请注意:

  

明确禁止使用任何自动方式将内容发布到craigslist。用户必须通过发布过程的所有步骤亲自和手动发布所有内容。任何用户也明确禁止开发,提供,营销,销售,分发或提供自动化方式来执行发布过程的任何步骤(全部或部分)。任何开发,提供,营销,销售,分发或提供自动化手段以执行发布过程的任何步骤(全部或部分)的用户应对每个访问craigslist的实例(由任何用户)负责并负责CL或其他第三方)使用该自动化手段。

答案 1 :(得分:8)

我已经为你搜索了这个,并且找到了相同的结果 - 目前,似乎没有任何现有的,免费提供的PHP类来处理Craigslist批量上传。

我还发现,其他人也在寻找同样的人,在Freelancer.com这样的自由职业板上发布职位,让开发人员为他们创建一个。

看起来您必须自己编写此代码,或付钱给别人为您执行此操作。遗憾。

<强> APPENDUM:

参考Craigslist Bulk Posting Interface帮助页面,页面末尾包含一个示例Perl脚本,以及批量发布所需的XML / RSS格式示例。

实现所需内容的最简单方法是让PHP脚本创建RSS / XML文件,然后触发Perl脚本执行上传并将结果记录到第二个文件中(或直接返回到脚本)。

答案 2 :(得分:8)

我找到了一个用于CL批量发布的PHP脚本示例。不确定你是否还在为此寻找PHP包装器。

以下是我在open-reality.org帖子中找到的代码: 资料来源:http://support.open-realty.org/showthread.php?23764-Bulk-posting-in-Craigslist

<?php
class cURL {

    var $headers;
    var $user_agent;

    function cURL()
    {
        $this->headers[] = 'Connection: Keep-Alive';
        $this->headers[] = 'Content-type: application/x-www-form-urlencoded;charset=UTF-8';
        $this->user_agent = 'Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 1.0.3705; .NET CLR 1.1.4322; Media Center PC 4.0)';
    }



    function post($url,$data) {
        $process = curl_init($url);
        curl_setopt($process, CURLOPT_HTTPHEADER, $this->headers);
        curl_setopt($process, CURLOPT_HEADER, 1);
        curl_setopt($process, CURLOPT_USERAGENT, $this->user_agent);
        curl_setopt($process, CURLOPT_TIMEOUT, 30);
        curl_setopt($process, CURLOPT_POSTFIELDS, $data);
        curl_setopt($process, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt($process, CURLOPT_FOLLOWLOCATION, 1);
        curl_setopt($process, CURLOPT_POST, 1);
        $return = curl_exec($process);
        $info = curl_getinfo($process);
        curl_close($process);
        return $info;
    }

}

$postdata = "
<?xml version=\"1.0\" encoding=\"utf-8\"?>\n

<rdf:RDF xmlns=\"http://purl.org/rss/1.0/\"
         xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\"
         xmlns:cl=\"http://www.craigslist.org/about/cl-bulk-ns/1.0\">

  <channel>
    <items>
      <rdf:li rdf:resource=\"NYCBrokerHousingSample1\"/>
      <rdf:li rdf:resource=\"NYCBrokerHousingSample2\"/>
    </items>

    <cl:auth username=\"****\"
             password=\"****\"

  </channel>
  <item rdf:about=\"NYCBrokerHousingSample1\">
    <cl:category>apa</cl:category>
    <cl:area>chi</cl:area>
    <cl:subarea>chc</cl:subarea>
    <cl:neighborhood>Lakeview</cl:neighborhood>
    <cl:housingInfo price=\"1450\"
                    bedrooms=\"0\"
                    sqft=\"600\"/>
    <cl:replyEmail privacy=\"C\">bulkuser@bulkposterz.net</cl:replyEmail>
    <cl:brokerInfo companyName=\"Joe Sample and Associates\"
                   feeDisclosure=\"fee disclosure here\" />
    <title>Spacious Sunny Studio in Upper West Side</title>
    <description><![CDATA[
      posting body here
    ]]></description>
  </item>



</rdf:RDF>
"; 

$cc = new cURL();
$url = 'https://post.craigslist.org/bulk-rss/post';
$output = $cc->post($url,$postdata); 

//echo $output;

print_r($output); 

答案 3 :(得分:1)

请注意,截至目前,API已针对新帐户关闭。我不确定他们什么时候打算再打开它,如果有的话。

但是,有一个网站正是如此,他们声称这是合法的。 www.repost123.com所以当他们说任何类型的自动发布都是非法的时候,我不确定Craigslist的意思。