Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 8897587
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 15, 20262026-06-15T00:22:56+00:00 2026-06-15T00:22:56+00:00

Hoping someone has some suggestions or work-arounds. I recently wrote an email parser to

  • 0

Hoping someone has some suggestions or work-arounds.

I recently wrote an email parser to work for mail forwarded through a pipe in CPanel and have the details entered in a mySQL table.

The client now wants historical mail importing to this database and has approx 50 Gmail accounts with some having over 20,000 messages in.

I have been able to get up to around 7000 emails out of 25000 on the ‘test’ account I’m using. To try and work out why I’ve stripped it down so there’s a very simple php imap script running just to dump the a couple of parts of the email in to a cell in a table and was going to worry about parsing it after, but the same thing happens. It hits around the 6000-7000 email mark and stops – no errors or anything, it just stops.

I’ve just found out that Gmail has a bandwidth limit for IMAP of 750MB per hour and doing the math it looks quite likely I’m hitting that and that’s why it’s stopping.

First question – anyone know how I can check if that’s the reason?

Secondly – assuming it is that can anyone think of a best solution?

I considered doing it in blocks of a few thousand emails but this would mean a lot of manual intervention because of the number of accounts and it would take a LONG time to download them all which I don’t have.

The second (and so far best) idea I’ve had is to use one of Gmail’s recommended methods to migrate all the mail to an email address created on the client’s Cpanel and use the inbuilt pipe feature to forward the mail through my script in the same way I’m doing with their new mail. (I’m not 100% sure the migration will trigger CPanel to apply the pipe rule, I’d have to test).

Appreciate any input.

thanks in advance.

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-15T00:22:59+00:00Added an answer on June 15, 2026 at 12:22 am

    I don’t have an answer to your first question.

    But as far as your second question goes you don’t necessarily have to re-run your program manually if you split the task up into a couple thousand emails. You could either use sleep to stop the program for an hour after x number of emails have been pulled over, or you could setup a cron job that runs once per hour and you would just have to save a pointer to the last email you processed in a database or temp file so you know where to pick up and start again next cron job run.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

A long shot but here's hoping someone has some experience coding PHP hooks for
UPDATE: SOLUTION AT BOTTOM I'm hoping someone else has spent some time ironing out
I'm hoping someone else has some input into what's going on here. When I
I am hoping someone has seen some information on a way to authenticate to
I have a more generic question, so I'm hoping someone here has some info
I'm hoping someone has some experience using the comments social plugin, specifically with regards
I'm hoping that someone has some workflow tips on tracking separate but very (90%)
I'm hoping someone has run into this sort of problem before, and can give
I am sure someone has this done already, and was hoping someone could share
Here's a JSFiddle that breaks uniquely in Internet Explorer 9. I'm hoping someone has

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.